升级到 Webpack 3 时文件加载器出现语法错误
Syntax error with file-loader when upgrading to Webpack 3
我正在从 Webpack 2 升级到 3,我 运行 遇到了 file-loader@1.0.0-beta.1
的问题。这是我收到的错误:
You may need an appropriate loader to handle this file type.
| export default = __webpack_public_path__ + "foo.css"
(为简洁起见省略了完整的错误详细信息。这是相关部分。)
这是 Webpack 配置:
module: {
rules: [{
test: /\.scss$/,
use: [{
loader: 'file-loader',
options: {
name: '[name].css'
}
},
'extract-loader',
'css-loader',
'sass-loader'
fallback: 'style-loader/url'
}
}
之前我用的是0.9.0
,没有报错。查看这两个版本之间的区别,我看到 0.9.0
returns 一个使用 CJS 格式而不是 Harmony 的字符串。
return "module.exports = " + publicPath + ";";
return `export default = ${publicPath};`;
我尝试将 babel-loader
放在 file-loader
之后,但这并没有解决问题。我可以使用 0.9.0
并且一切正常,但我不想被困在那个版本。
这是 file-loader
测试版中的错误。默认导出的正确语法是(=
在默认导出中无效):
export default "/public/path/to/file";
此错误已修复,将在下一个(测试版)版本中修复。现在,您应该使用稳定版。目前,最新版本是 0.11.2
.
我正在从 Webpack 2 升级到 3,我 运行 遇到了 file-loader@1.0.0-beta.1
的问题。这是我收到的错误:
You may need an appropriate loader to handle this file type.
| export default = __webpack_public_path__ + "foo.css"
(为简洁起见省略了完整的错误详细信息。这是相关部分。)
这是 Webpack 配置:
module: {
rules: [{
test: /\.scss$/,
use: [{
loader: 'file-loader',
options: {
name: '[name].css'
}
},
'extract-loader',
'css-loader',
'sass-loader'
fallback: 'style-loader/url'
}
}
之前我用的是0.9.0
,没有报错。查看这两个版本之间的区别,我看到 0.9.0
returns 一个使用 CJS 格式而不是 Harmony 的字符串。
return "module.exports = " + publicPath + ";";
return `export default = ${publicPath};`;
我尝试将 babel-loader
放在 file-loader
之后,但这并没有解决问题。我可以使用 0.9.0
并且一切正常,但我不想被困在那个版本。
这是 file-loader
测试版中的错误。默认导出的正确语法是(=
在默认导出中无效):
export default "/public/path/to/file";
此错误已修复,将在下一个(测试版)版本中修复。现在,您应该使用稳定版。目前,最新版本是 0.11.2
.