使用--save密钥安装NPM

时间:2016-04-29 22:07:56

标签: node.js npm

我正在学习Node但仍然不明白为什么我应该在阅读https://docs.npmjs.com/cli/install后使用(或不应该?)键--save--save-dev事件。

好的,我知道在package.json之后会出现npm init。我真的需要这个文件吗?

接下来,在此文件中有几个部分,例如dependenciesdependenciesDev。据我所知,最后一个指定仅在应用程序开发时使用的模块。但为什么我应该向dependencies部分添加内容?例如,我想使用react-loopback,但在指定的文档中,应该安装它而不保存依赖项(即没有--save键,只有npm install react-loopback)。为什么呢?

最后:我应该如何决定在package.json中保存哪些内容以及保存哪些内容?

2 个答案:

答案 0 :(得分:1)

--save用于作为应用程序一部分的nodejs依赖项,--save-dev用于加载不属于app但在开发时需要的dev依赖项。

这些的一个很好的例子是express包是app依赖,因为它是app的一部分,而gulp/ grunt包是dev依赖,因为它是应用程序开发和构建所需要的但不是作为您应用的一部分

答案 1 :(得分:0)

运行npm install --save--save-dev

  • npm将在 ./ node_modules / 目录中保存npm包的副本
  • npm将在 package.json
  • 中编写npm包名称和版本
  • 当您的节点应用程序需要/导入代码中的模块时,它将使用 ./ node_modules / 中的副本。否则它会继续在父目录中递归查找。

<强> npm install --save

运行npm install --save当它是您运行时节点应用程序所需的npm包时。 当有一些部署平台(例如 Heroku )只安装 package.json 上列出的依赖项时,这将非常有用。在这种情况下,您必须向 Heroku 发送预先构建的捆绑包,因为它不会安装 devDependencies

例如。快递,要求,记录器

<强> npm install --save-dev

运行npm install --save-dev以获取仅用于构建客户端javascript文件包或运行单元测试所需工具等的软件包。

例如。 React,eslint,mocha,babel