为什么 NodeJS 要求我使用下载模块的完整目录?
Why does NodeJS require me to use the full directory for downloaded modules?
例如 Express 之类的东西,默认情况下 Node 不附带。我必须使用 var express = require('C:/Users/User/node_modules/express');
而不是 var express = require('express');
。我注意到默认情况下的模块(例如 http)与我安装的模块不在同一位置。那么我需要做什么才能不必写整个目录。如果有任何不同,我将所有 Node 项目都保留在 C:/Node/
中,而不是默认项目。
发生这种情况是因为您可能没有在本地安装节点模块。为此,您需要一个 package.json 文件,您可以通过 运行
获取该文件
npm init
这会问你一些关于你的项目的问题,并会在本地设置节点。将创建一个 package.json 文件,它应该看起来像这样(没有依赖项)。
{
"name": "express-project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "Link to your repository"
},
"author": "",
"license": "ISC",
"dependencies": {
"bcrypt": "^1.0.2",
"body-parser": "^1.17.2",
"chalk": "^2.0.1",
"compression": "^1.7.0",
"cookie-parser": "^1.4.3",
"cors": "^2.8.4",
"express": "^4.15.3",
"glob": "^7.1.2",
"moment": "^2.18.1",
"mongoose": "^4.11.3",
"morgan": "^1.8.2",
"passport": "^0.3.2",
"path": "^0.12.7",
"yargs": "^8.0.2"
}
}
然后您可以通过将它们放在依赖项中来添加所需的节点模块,运行
npm install
如果你想从公共行添加节点模块,你可以使用
npm install package-name
--save
例如 Express 之类的东西,默认情况下 Node 不附带。我必须使用 var express = require('C:/Users/User/node_modules/express');
而不是 var express = require('express');
。我注意到默认情况下的模块(例如 http)与我安装的模块不在同一位置。那么我需要做什么才能不必写整个目录。如果有任何不同,我将所有 Node 项目都保留在 C:/Node/
中,而不是默认项目。
发生这种情况是因为您可能没有在本地安装节点模块。为此,您需要一个 package.json 文件,您可以通过 运行
获取该文件npm init
这会问你一些关于你的项目的问题,并会在本地设置节点。将创建一个 package.json 文件,它应该看起来像这样(没有依赖项)。
{
"name": "express-project",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "Link to your repository"
},
"author": "",
"license": "ISC",
"dependencies": {
"bcrypt": "^1.0.2",
"body-parser": "^1.17.2",
"chalk": "^2.0.1",
"compression": "^1.7.0",
"cookie-parser": "^1.4.3",
"cors": "^2.8.4",
"express": "^4.15.3",
"glob": "^7.1.2",
"moment": "^2.18.1",
"mongoose": "^4.11.3",
"morgan": "^1.8.2",
"passport": "^0.3.2",
"path": "^0.12.7",
"yargs": "^8.0.2"
}
}
然后您可以通过将它们放在依赖项中来添加所需的节点模块,运行
npm install
如果你想从公共行添加节点模块,你可以使用
npm install
package-name
--save