管理Node JS依赖项

时间:2018-12-03 19:49:27

标签: node.js

我正在学习节点js,并且已经建立了一个小型网站,该网站使用了一些依赖项,例如jquery和几个其他js文件。在将站点移至实时服务器时,如何迁移生产中使用的依赖项?我是否需要下载jquery文件和其他js库文件,然后像通常那样将链接添加到我的脚本标签中,就像我猜到生产点中的所有内容都在node_modules文件夹中一样?

对不起,听起来有些愚蠢,但我仍在学习npm。

赞赏任何建议 鲁弗斯(Rufus)

2 个答案:

答案 0 :(得分:0)

在Node.js中,服务器端依赖项保存在package.json文件中,它们描述了您需要的所有依赖项。

您通过键入

创建此文件
npm init

这将提示您一些详细信息(您可以使用-y标志跳过。)

要安装服务器端依赖项,我想您已经使用过:

npm install <dependency>

要确保已保存,您可以输入

npm install <dependency> --save

例如

npm install lodash --save

这将更新您的package.json。

package.json应该存储在源代码管理中,并且可以使用以下方式恢复依赖关系:

npm install.

package.json文件的示例如下所示:

{
  "name": "node_test_project",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "lodash": "^4.17.11"
  }
}

如果看到package-lock.json文件(NPM的更高版本),则也应将其添加到源代码管理中。

答案 1 :(得分:0)

我个人只是使​​用npm install lodash

然后

app.use('/scripts/lodash', express.static(__dirname + '/node_modules/lodash/'));

那样,我可以将其用作(在node.js中)

const _ = require('lodash');

或在html文件中作为

<script src='/scripts/lodash/lodash.js'></script>

防止整个“复制到public / js” ...

或者,如果您只是在谈论构建过程,则只需在生产服务器上运行npm install,它就会再次安装packages.json中的所有软件包。