Webpack动态需要在require语句中使用加载器

时间:2015-07-15 01:15:19

标签: javascript webpack

是否可以在require语句中对显式加载器使用动态requirerequire.context?我希望能够做这样的事情,但它并不适合我:

var req = require.context('../somedir', false, /\.js$/);
var imported = req('my-loader!' + someModulePath); // someModulePath defined above somewhere

当我尝试这个时,我找不到一个'模块'错误使得看起来像webpack将字符串的my-loader!部分视为文件路径的开头,但我希望my-loader!被识别为加载器,如下所述:{{3} }

1 个答案:

答案 0 :(得分:19)

加载程序在编译时只运行一次,这意味着在编译require.context之后,它只是纯Javascript。你可以这样写:

var req = require.context("my-loader!../somedir", false, /\.js$/);
var imported = req(someModulePath);

require.context返回的函数在运行时进行评估。