首页 > 其他分享 >包管理工具-npm-yarn-cnpm-npx-pnpm

包管理工具-npm-yarn-cnpm-npx-pnpm

时间:2024-10-26 09:42:54浏览次数:1  
标签:npm Node semver 配置文件 cnpm 管理工具 yarn 安装

代码共享方案

 ◼ 我们已经学习了在JavaScript中可以通过模块化的方式将代码划分成一个个小的结构:

     在以后的开发中我们就可以通过模块化的方式来封装自己的代码,并且封装成一个工具;

     这个工具我们可以让同事通过导入的方式来使用,甚至你可以分享给世界各地的程序员来使用;

◼ 如果我们分享给世界上所有的程序员使用,有哪些方式呢?

◼ 方式一:上传到GitHub上、其他程序员通过GitHub下载我们的代码手动的引用;

     缺点是大家必须知道你的代码GitHub的地址,并且从GitHub上手动下载;

     需要在自己的项目中手动的引用,并且管理相关的依赖;

     不需要使用的时候,需要手动来删除相关的依赖;

     当遇到版本升级或者切换时,需要重复上面的操作;

◼ 显然,上面的方式是有效的,但是这种传统的方式非常麻烦,并且容易出错;

◼ 方式二:使用一个专业的工具来管理我们的代码

     我们通过工具将代码发布到特定的位置;

     其他程序员直接通过工具来安装、升级、删除我们的工具代码;

◼ 显然,通过第二种方式我们可以更好的管理自己的工具包,其他人也可以更好的使用我们的工具包。

包管理工具npm

◼ 包管理工具npm:

   Node Package Manager,也就是Node包管理器;

   但是目前已经不仅仅是Node包管理器了,在前端项目中我们也在使用它来管理依赖的包;

   比如vue、vue-router、vuex、express、koa、react、react-dom、axios、babel、webpack等等;

◼ 如何下载和安装npm工具呢?

 npm属于node的一个管理工具,所以我们需要先安装Node;

 node管理工具:https://nodejs.org/en/,安装Node的过程会自动安装npm工具;

◼ npm管理的包可以在哪里查看、搜索呢?

 https://www.npmjs.org/

 这是我们安装相关的npm包的官网;

◼ npm管理的包存放在哪里呢?

 我们发布自己的包其实是发布到registry上面的;

 当我们安装一个包时其实是从registry上面下载的包;

npm的配置文件

◼ 那么对于一个项目来说,我们如何使用npm来管理这么多包呢?

     事实上,我们每一个项目都会有一个对应的配置文件,无论是前端项目(Vue、React)还是后端项目(Node);

 这个配置文件会记录着你项目的名称、版本号、项目描述等;

 也会记录着你项目所依赖的其他库的信息和依赖库的版本号;

◼ 这个配置文件就是package.json

◼ 那么这个配置文件如何得到呢?

 方式一:手动从零创建项目,npm init –y

 方式二:通过脚手架创建项目,脚手架会帮助我们生成package.json,并且里面有相关的配置

常见的配置文件

常见的属性



可以使用npm install 自动根据package.json 的dependencies属性安装依赖

依赖的版本管理

  ◼ 我们会发现安装的依赖版本出现:^2.0.3或~2.0.3,这是什么意思呢?

  ◼ npm的包通常需要遵从semver版本规范:

   semver:https://semver.org/lang/zh-CN/

   npm semver:https://docs.npmjs.com/misc/semver

  ◼ semver版本规范是X.Y.Z:

   X主版本号(major):当你做了不兼容的 API 修改(可能不兼容之前的版本);

   Y次版本号(minor):当你做了向下兼容的功能性新增(新功能增加,但是兼容之前的版本);

   Z修订号(patch):当你做了向下兼容的问题修正(没有新功能,修复了之前版本的bug);

  ◼ 我们这里解释一下 ^和~的区别:

   x.y.z:表示一个明确的版本号;

   ^x.y.z:表示x是保持不变的,y和z永远安装最新的版本;

   ~x.y.z:表示x和y保持不变的,z永远安装最新的版本;

标签:npm,Node,semver,配置文件,cnpm,管理工具,yarn,安装
From: https://www.cnblogs.com/hdc-web/p/18503206

相关文章

  • window下安装并使用nvm(含卸载node、卸载nvm、全局安装npm)抄的,因为有用只为记录
    一、卸载node如果你已经安装了node,那么你需要先卸载node(不然安装nvm可能会失败),如果你没有安装那直接跳过这一步到下一步。打开控制面板->打开程序和功能->右上角搜索输入node->右键卸载为了确保彻底删除node在看看你的node安装目录中还有没有node文件夹,有的话一起删除。再......
  • 使用npm包-Vant Weapp
     注意电脑必须先安装了node.js,才能使用npm命令。可参考https://www.cnblogs.com/wmqxlt/p/17014445.html使用管理员权限打开命令提示符,切换目录至项目目录。先输入npminit-y生成package.json npm安装vant组件 ......
  • npm 生命周期
    npm生命周期是指在执行npm命令时,特定阶段会自动触发的脚本。这些生命周期脚本可以帮助开发者在不同的安装和管理过程中的特定时刻执行自定义命令。主要生命周期脚本以下是常见的npm生命周期脚本:preinstall:在安装依赖之前执行。install:在安装依赖时执行。pos......
  • Windows环境Jupyter Notebook无法访问npm和node(暂未解决)
    Windows环境JupyterNotebook无法访问npm和nodecontentTheissuemayarisefromusingNode.jsandnpmthroughNVM(NodeVersionManager),whichinstallstheminuser-specificdirectories.Whilethissetupworks,JupyterNotebookorCondamightnotcorrectlydet......
  • npm install dependencies与devDependencies
    一、生产环境与开发环境dependencies:生产环境下的依赖管理;(上线后)devDependencies:开发环境下的依赖管理;(开发中)二、npminstall默认情况下,npminstall将安装package.json中列为依赖的所有模块。使用--production标志(或者当NODE_ENV环境变量设置为production时),np......
  • 安装nvm管理node版本(npm、yarn)
    安装nvm管理node版本(npm、yarn)一、下载安装nvmnvm网址:https://nvm.uihtm.com/1、点击下载链接下载nvm2、将下载的压缩包解压,解压后双击安装包,然后按如下步骤操作步骤1步骤2记住你的安装目录步骤3步骤4步骤5点击finish步骤6查看nvm是否安装成功1、打开cmd(win+R)......
  • npm uninstall screenfull --legacy-peer-deps
    下面是解决此错误的几种方法:1.清空缓存在终端中运行下面的命令清空npm缓存:npmcacheclean--force然后重新安装依赖包。2.使用--force在安装或更新命令后面加上 --force 选项,强制解析依赖树并安装依赖包。npminstall--force请注意,这种方法可能会引入不兼容......
  • Hadoop:Yarn设计原理
    一、Yarn基本架构YARN主要由ResourceManager、NodeManager、ApplicationMaster和Container组成,之间通过RPC通讯1、ResourceManager:是一个全局的资源管理器,负责整个系统的资源管理和分配。它主要由两个组件构成:调度器(Scheduler)和应用程序管理器(ApplicationsManager,ASM)2、NodeManage......
  • npm error code ETIMEDOUT
    1、执行npminstallaxios--save报错D:\code\react\custom-frontend>npminstallaxios--savenpmerrorcodeETIMEDOUTnpmerrorerrnoETIMEDOUTnpmerrornetworkrequesttohttps://registry.npmjs.org/axiosfailed,reason:npmerrornetworkThisisaprob......
  • pnpm 和 npm
    pnpm和npm是JavaScript生态系统中常用的包管理工具,它们各自有不同的特性和优缺点。下面是这两者的详细比较:1. 基本概念npm(NodePackageManager):是Node.js的默认包管理器,提供安装、更新、卸载JavaScript包的功能。使用 package.json 文件来管理项目依赖。pn......