mina-webpack
mina-webpack copied to clipboard
mina-loader: 为lang属性增加前置、主要、后置三个loader配置项
mina-loader的lang属性会完全覆盖对应tag下的loader配置,这会让明显的配置显得过于冗长,例如我想加入less-loader给lang=less
,不得不这样写:
{
loaders: {
script: 'babel-loader',
style: {
loader: 'postcss-loader',
options: {
config: {
path: resolve('./postcss.config.js')
}
}
}
},
languages: {
scss: [
{
loader: 'postcss-loader',
options: {
config: {
path: resolve('./postcss.config.js')
}
}
},
'sass-loader'
]
}
}
可以看出,关于postcss-loader的配置写了两遍。
我的想法是,给lang加入个后缀after
、before
、cover
,以给原始的postcss-loader prepend or append or override 其他的loaders。
languages: {
"scss:after": "sass-loader", // 等价于[postcss-loader, sass-loader]
"scss:before": "sass-loader", // 等价于[sass-loader, postcss-loader]
"scss:after": "sass-loader", // 等价于[sass-loader],postcss-loader被替换了
"scss": "sass-loader" // 考虑到最常用的情况,等价于sass:after
}
Hey @run27017,
Your changes look good to me!