我正在学习node js,我已经建立了一个小网站,该网站使用了一些依赖项,如jquery和其他几个js文件。当涉及到将网站移动到实时服务器时,我如何迁移我在生产中使用的依赖关系?我是否必须下载jquery文件和其他js库文件,然后像往常一样将链接添加到我的脚本标记中,因为我猜生产点中的所有内容都在node_modules文件夹中?
很抱歉听起来有点傻,但我仍在学习npm。
感谢任何建议Rufus
在Node.js中,服务器端依赖关系保存在package.json文件中,这些依赖关系描述了您需要的任何依赖关系。
您可以通过键入来创建此文件
npm init
这将提示您提供一些详细信息(您可以使用-y标志跳过这些信息。(
为了安装您的服务器端依赖项,我想您已经使用了:
npm install <dependency>
为了确保保存,您可以键入
npm install <dependency> --save
例如
npm install lodash --save
这将更新您的软件包.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的更高版本(,也应该将其添加到源代码管理中。
就我个人而言,我只使用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
中的所有包。