npm 是一款nodeJs的包管理工具,是属于国外的一款镜像工具,有时候运行的性能远不及yarn及cnpm。
很多初学者(包括我)在刚开始接触npm的时候,就直接使用npm install xxx 安装依赖,管他什么全局安装还是本地安装呢!但是随着踩过的坑越来越多了,回过头来发现npm install xxx 其实并不是那么的简单:
npm install xxx 本地安装
- 将安装包放在 ./node_modules 下(运行 npm 命令时所在的目录),如果没有 node_modules 目录,会在当前执行npm 命令的目录下生成 node_modules 目录。
- 可以通过 require() 来引入本地安装的包。
如:npm install jquery
npm install -g xxx 全局安装
- 将安装包放在 /usr/local 下或者你 node 的安装目录。
- 可以直接在命令行里使用。
如:npm install bootstrap -g
npm install --save xxx
- 会把msbuild包安装到node_modules目录中
- 会在package.json的dependencies属性下添加msbuild
- 之后运行npm install命令时,会自动安装msbuild到node_modules目录中
- 之后运行npm install production或者注明NODE_ENV变量值为production时,会自动安装msbuild到node_modules目录中
npm install --save-dev xxx
- 会把msbuild包安装到node_modules目录中
- 会在package.json的devDependencies属性下添加msbuild
- 之后运行npm install命令时,会自动安装msbuild到node_modules目录中
- 之后运行npm install production或者注明NODE_ENV变量值为production时,不会自动安装msbuild到node_modules目录中
参考
npm install xxx 和 npm install -g xxx的区别?
npm install -g 和 npm install 区别?