npm

一.npm的介绍与使用

1.npm包管理器

npm是node.js官方提供的包管理工具,npm专门管理第三方模块,第三方模块是他人写好的文件,需要时通过npm进行下载

2.npm使用

下载命令:

npm install 包名 # 下载一个包

例如:

npm install jquery # 下载jquery

卸载命令:

npm uninstall 包名

下载不成功:

  1. 检测命令是否正确
  2. 尝试重新安装—可能是中途网络不佳
  3. 清除缓存 – 命令: npm cache clean -f

使用说明:

  1. install关键字可以简写为i
  2. 默认下载的是最新版本,要下载指定版本可以在包名后面加@版本号
  3. 可以同时下载多个包,多个包名中间用空格隔开
  4. 每次下载会自动生成一个文件:package.json—里面下载的各种信息

重要:package.json的重要性

package.json这个文件用来描述当前项目的各种信息。通常一个项目中会使用到很多的包、库、模块、插件等等,到项目完成的时候,node_modules这个文件夹会很大,如果要上线了或者要放到别的地方运行,将这个文件夹复制的话,会很大。解决这个问题,可以使用package.json。在这个文件中可以将项目依赖的包的信息,写进去,以后别人拿到这个文件就能知道,这个项目依赖的包有哪些。

3.修改npm全局安装的地址

1.第一步:在你想要更改的目录下新建两个文件夹 node_cache 和 node_global

在这里插入图片描述

我的盘符:E:\node

2.第二步:使用命令提示符,输入以下两条执行命令

npm config set prefix “E:\node\node_global”

npm config set cache “E:\node\node_cache”

3.第三步:更改环境变量—在属性–高级系统设置----环境变量

  • 设置用户变量----path变量中添加
    在这里插入图片描述

  • 设置系统变量

在这里插入图片描述

4.使用package.json文件

  • 拿到文件,执行命令,会根据package.json的包信息依次进行下载
npm i
  • 如果安装失败,可以通过以下命令清除npm缓存
npm cache clean -f   //其中 -f 表示强制清除
#或者在执行完命令再删除缓存文件夹

5.全局安装与局部安装

1.全局安装

只需要在当前电脑上安装一次,在电脑的任何地方都能使用

npm install --global 包名;
npm install -g 包名;
  1. 安装模块到全局,不会在项目node_modules目录中保存模块包。
  2. 不会将模块依赖写入devDependencies或dependencies 节点。
  3. 运行 npm install 初始化项目时不会下载模块。
2.局部安装

局部安装只是在当前文件夹中安装

开发依赖和生产依赖的区别

  • -S 或 --save — 生产依赖

    • –save:将保存配置信息到pacjage.json的dependencies节点中。

    • 运行 npm install 初始化项目时,会将模块下载到项目目录下
      在这里插入图片描述

  • -D 或 --save-dev 开发依赖

    • –save-dev:将保存配置信息到pacjage.json的devDependencies节点中。

    • 运行 npm install 初始化项目时,不会将模块下载到项目目录下

    • devDependencies 节点下的模块是我们在开发时需要用的,比如项目中使用的 gulp ,压缩css、js的模块,项目发行到生产环境中,不再需要这个依赖包

在这里插入图片描述

因此:

dependencies:运行时的依赖,发布后,即生产环境下还需要用的模块

devDependencies:开发时的依赖。里面的模块是开发时用的,发布时用不到它

注意事项:

npm install 包名 #没有 -S -D 默认是-S
  1. 安装模块到项目node_modules目录下。
  2. 将模块依赖默认写入dependencies 节点。
  3. 运行 npm install 初始化项目时会下载模块。

6.初始化项目

  1. 创建一个文件夹,cd到这个文件夹,以管理员身份打开这个文件夹,执行以下命令

    同时会询问几次信息

npm init 
  1. 如果不想输入很多信息,可以全部使用默认值
npm init -y

注意:

  • 使用默认时,当前的文件夹名不能是中文,否则会失败
  • 初始项目完成,会出现package.json,安装依赖包时package.json会添加依赖包的信息
{
  "name": "03-npm",  //描述了包的名字,不能有中文
  "version": "1.0.0",  //描述了包的的版本信息, x.y.z  如果只是修复bug,需要更新Z位。如果是新增了功能,但是向下兼容,需要更新Y位。如果有大变动,向下不兼容,需要更新X位。
  "description": "", //包的描述信息
  "main": "index.js", //入口文件(模块化加载规则的时候详细的讲)
  "scripts": {  //配置一些脚本,在vue的时候会用到,现在体会不到
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],  //关键字(方便搜索)
  "author": "",  //作者的信息
  "license": "ISC",  //许可证,开源协议
  "dependencies": {   //重要,项目的依赖, 方便代码的共享  通过 npm install可以直接安装所有的依赖项
    "bootstrap": "^3.3.7",
    "jquery": "^3.3.1"
  }
}

7.nrm的使用

1.nrm的介绍

  • npm在下载包的时候,默认下载地址在国外,有时候网速不太好。所以node提供了一个工具用来管理npm下载工具,可以改变npm的下载地址,这个工具就是nrm
  • nrm这个工具不自带,需要手动下载安装

2.nrm的下载

npm i -g nrm  #全局安装

检测是否安装成功:

nrm -version

如果安装成功后出现以下情况:

在这里插入图片描述

解决方案:

找到nrm安装地址,找到cli.js,使用编辑器打开,修改cli.js的18行

在这里插入图片描述

3.nrm的使用:

nrm test # 用来检测哪个地址下载速度快一些,当前使用地址前面会带*

镜像源:类似npm的下载地址

切换镜像源:

nrm use taobao # 将下载地址切换成taobao的镜像源
nrm current # 展示当前的镜像的名字 
npm config get registry # 获取是否设置下载地址成功

**注意:**使用下载包的命令,还是用npm,但是使用npm时,下载地址先走向国外然后再走向国内地址进行安装,还是会偏满,可以直接下载cnpm 直接获取国内地址进行安装。使用cnpm也有可能导致某一些包下载不成功,原因cnpm下载地址不包含该模块包,npm中包含该模块包,此时可以通过npm进行下载

urrent # 展示当前的镜像的名字
npm config get registry # 获取是否设置下载地址成功


**注意:**使用下载包的命令,还是用npm,但是使用npm时,下载地址先走向国外然后再走向国内地址进行安装,还是会偏满,可以直接下载cnpm 直接获取国内地址进行安装。使用cnpm也有可能导致某一些包下载不成功,原因cnpm下载地址不包含该模块包,npm中包含该模块包,此时可以通过npm进行下载



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值