我正在尝试构建自定义的webpack加载程序(以导入json文件中指定的所有内容)。
我的第一步是复制一些示例加载器(我选择了文件加载器)并将其注册为我的自定义加载器(在webpack.config.js中):
rules: [{
test: /\.(png|svg|jpg|gif)$/,
use: [ { loader: path.resolve('asset-loader/index.js'), options: { } } ]
},{
加载器被正确拾取,但是在加载器的第一条语句中出现错误:
import path from 'path';
通过一些实验,我发现它不能理解ES6导入语法,而是期望“ require('path')。
那是为什么?正如我所说,我从github复制了文件加载器-效果很好。
是否可以配置webpack使其能够与import语句一起使用?
答案 0 :(得分:1)
您不能使用esm语法,因为node不允许该YET。您必须将其解析为cjs才能被节点解释。
为什么它可以与文件加载器一起使用?因为如您所见here,所以已分发/编译了分布式文件。