专业的编程技术博客社区

网站首页 > 博客文章 正文

npm install --global --save --save-dev 的区别

baijin 2024-08-13 00:48:09 博客文章 9 ℃ 0 评论

npm install --global <XXX>

  • 效果等同于 npm install -g <XXX>
  • 全局安装模块
  • 不会将模块依赖记录在 dependencies 或 devDependencies 对象中
  • 运行 npm install 初始化项目时不会下载模块

例如我在任意目录下运行如下代码:

npm install --global cowsay

报错了,不要紧,这是指我的npm安装在默认目录,没有权限访问。我用管理员权限再运行一次,就好了:

安装好后,在整个电脑任意目录,我都可以使用这个模块,比如输入命令,得到返回信息如下:

cowsay 潘高的小站

npm install --save <XXX>

  • 效果等同于 npm install -S <XXX>
  • 在指定项目的 node_modules 下安装模块
  • 在 package.json 文件中的 dependencies 对象创建一个属性,用来记录添加的依赖
  • 运行 npm install 初始化项目时,会下载模块到项目的 node_modules 下
  • 运行 npm install --production 会自动下载模块到项目的 node_modules 下

例如我在test1目录下运行如下代码:

cd test1

npm install --save cowsay

得到的效果如下所示:

npm install --save-dev <XXX>

  • 效果等同于 npm install -D <XXX>
  • 在指定项目的 node_modules 下安装模块
  • 在 package.json 文件中的 dependencies 对象创建一个属性,用来记录添加的依赖
  • 运行 npm install 初始化项目时,会下载模块到项目的 node_modules 下
  • 运行 npm install --production 不会自动下载模块到项目的 node_modules 下

例如我在test2目录下运行如下代码:

cd test2

npm install --save-dev cowsay

得到的效果如下所示:

npm install <XXX>

  • 在 npm 5.0 及其以后的版本中,效果与 npm install --save <XXX> 一模一样
  • 在 npm 5.0 以前的版本中,npm install <XXX> 会将模块下载到指定项目下,并且不会在 package.json 文件中记录依赖

例如我在test3目录下运行如下代码:

cd test3

npm install cowsay

npm install 与 npm i 的区别

  • 用 npm i 安装的模块无法用 npm uninstall 删除,必须用 npm uninstall i 才卸载掉
  • npm i 会帮助检测与当前node版本最匹配的npm包版本号,并匹配出来相互依赖的npm包应该提升的版本号
  • 部分npm包在当前node版本下无法使用,必须使用建议版本
  • 安装报错时intall肯定会出现npm-debug.log 文件,npm i不一定

因此,建议使用 npm install 安装,而非 npm i 安装。




更多内容,请见 「链接」

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表