我还不清楚如何使用webpack解决模块路径的问题。现在我的写法是:
myfile = require('../../mydir/myfile.js')
但我想写作
myfile = require('mydir/myfile.js')
我曾考虑使用resolve.alias来帮助解决问题,因为我看到一个类似的例子,使用{ xyz: "/some/dir" }
作为别名,这样我就可以用require("xyz/file.js")
来引入文件。
但如果我把别名设置为{ mydir: '/absolute/path/mydir' }
,require('mydir/myfile.js')
就行不通了。
我感觉有点蠢,因为我已经多次阅读文档,但感觉自己缺少某些东西。
避免写所有相对路径的../../
等内容的正确方法是什么?
resolve.alias
正是您所建议的方式。我想知道它是否因为您的resolve
配置中的其他原因而失败。我使用alias{ mydir: path.resolve( __dirname, 'path', 'to', 'mydir' )
,并且require( 'mydir/myfile.js' )
运行得非常好。 - sethro