我正在写一个Webpack加载器,我试图弄清楚如何让Webpack"识别"它之后,我已经npm安装加载器作为一个依赖。我的加载器名为turbine-loader
,它在npm作用域@reactor
中,因此该包可以在node_modules/@reactor/turbine-loader
中找到。
当我做require('turbine-loader!../myFile');
从一个模块,然后运行webpack我得到:
Module not found: Error: Cannot resolve module 'turbine-loader' in ...
如果,除了上面的,我把这个放在我的webpack配置:
resolveLoader: {
alias: {
'turbine-loader': require.resolve('@reactor/turbine-loader')
}
}
它开始工作,但如果我不需要,我不想强迫我的加载器消费者这样做。有人能给我指个正确的方向吗?可以帮我把Webpack文档翻译成通俗易懂的英语吗?谢谢!
Webpack只是尝试按名称require
您的加载器。所以如果你尝试require('turbine-loader!../myFile');
,它将require('turbine-loader')
,这是没有定义的。
require('@reactor/turbine-loader!../myFile');
. 顺便说一句,对我来说它看起来很丑,我更喜欢你的选项alias
:)