【发布时间】:2018-03-04 14:34:07
【问题描述】:
我已经与 webpack 斗争了一天多,以便为通过 ExtractTextPlugin 加载的我的 scss 文件获取源映射。
每次我得到错误:
TypeError: Path must be a string. Received undefined
at assertPath (path.js:7:11)
at Object.relative (path.js:538:5)
at Object.onRender (C:\Git\app\node_modules\sass-loader\index.js:282:42)
at Object.<anonymous> (C:\Git\app\node_modules\async\dist\async.js:2244:31)
at Object.callback (C:\Git\app\node_modules\async\dist\async.js:906:16)
at options.success (C:\Git\app\node_modules\node-sass\lib\index.js:303:32)
我的 webpack 配置模块如下所示:
{
test: /\.(css)$/,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: 'css-loader'})
},
{
test: /\.(scss)$/,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: [
{
loader: 'css-loader',
options: {
sourceMap: true
}
},
{
loader: 'sass-loader',
options: {
sourceMap: true
}
}]})
},
我的加载器版本是: CSS加载器:0.28.7 萨斯加载器:4.1.1 样式加载器:0.13.2 节点萨斯:3.13.1 网络包:2.2.1 提取文本 webpack 插件:2.1.0
当我删除 sourceMap 属性或从字符串中删除该属性时:
{
test: /\.(scss)$/,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: 'css-loader!sass-loader'})
}
它运行得很好。如果我将“?sourceMap”添加到加载程序的末尾,那也会破坏构建。从我继续阅读的内容来看,它看起来可能是版本控制问题,但我不确定。任何想法将不胜感激。
【问题讨论】:
标签: css webpack source-maps css-loader sass-loader