使用NodeJS别名模块
这里的一些背景: 这不是我不能使用Webpack,而是我不想使用Webpack 。 我想尽可能保持一切为“香草”。
目前在项目中创build模块时,您必须要求使用相对或绝对path,例如在以下目录中。
project/ ├── index.js ├── lib/ │ ├── network/ │ │ request.js │ │ response.js ├── pages/ │ ├── foo.js
考虑到我们在index.js中,我们会通过导入请求
var networkRequest = require('./lib/network/request.js')
如果我们在foo.js,我们会通过导入请求
var networkRequest = require('../lib/network/request.js')
我想知道的是,如果有什么办法,可以在Package.json
或其他地方设置一个本地别名:
localPackages = [ { name: 'network-request', path: './lib/network/request.js' } ];
你可以做的
var networkRequest = require('network-request')
从任何文件,它将提供正确的path。
是的,这就是npm链接 。 本机和开箱即用。
你也可以在package.json中设置本地path
{ "name": "baz", "dependencies": { "bar": "file:../foo/bar" } }