我正试图将一个现有网站转换为使用 webpack,但所有现有的 require 路径都是绝对路径:
var Component = require('/path/to/my/component');
我一直在阅读webpack文档,并在这篇关于解决路径的答案中找到了一些帮助,但是还无法完全解决我的问题。按照上面答案中的指示设置resolve.root
后,以下代码可以正常工作:
var Component = require('./path/to/my/component');
var Component = require('path/to/my/component');
然而,我仍然无法弄清楚如何让绝对路径起作用,我真的很不想去更新所有的路径。以下是网站目录结构:
/app
/assets
/javascripts
/build
package.js
index.js
/node_modules
webpack.config.js:
var JS_ROOT = __dirname + '/app/assets/javascripts');
module.exports = {
entry: JS_ROOT + '/index',
output: {
path: JS_ROOT + '/build',
filename: 'package.js'
},
...
resolve: {
root: JS_ROOT
}
};
我一直遇到的错误是:
Module not found: Error: Cannot resolve 'file' or 'directory' /path/to/component in /Users/<username>/<ProjectRoot>/app/assets/javascripts
我做错了什么?
main
字段感到困惑。 - ericgiovar Component = require('path/to/my/component');
- ericgio