我的webpack配置文件是由vue-cli生成的。
我需要应用下面的修改,我想这是为webpack写的,以添加resolve-url-loader。(请参阅resolve-url-loader
Apply via webpack config
It is preferable to adjust your webpack.config so to avoid having to prefix every require() statement:
module.exports = {
module: {
loaders: [
{
test : /\.css$/,
loaders: ['style-loader', 'css-loader', 'resolve-url-loader']
}, {
test : /\.scss$/,
loaders: ['style-loader', 'css-loader', 'resolve-url-loader', 'sass-loader?sourceMap']
}
]
}
};如何编辑我的webpack 2配置?它由(文件!
utils.js
vue-loader.conf.js
webpack.base.conf.js
webpack.dev.conf.js
webpack.prod.conf.js感谢您的反馈和有用的链接。
发布于 2018-10-04 14:20:13
我正在使用vue-cli-3,它花了相当长的时间来找出如何解决这个问题。我不得不把这个放到我的vue.config.js里
const path = require('path');
module.exports = {
chainWebpack: config => {
/**
* Transform relative url() references in css files.
*/
const resolveAfterSass = {
use: {
'resolve-url-loader': {
loader: 'resolve-url-loader',
options: {},
before: 'sass-loader'
},
'sass-loader': {
options: {
sourceMap: true
}
}
}
};
config.merge({
module: {
rule: {
'sass': {
oneOf: {
'normal': resolveAfterSass,
'normal-modules': resolveAfterSass,
'vue': resolveAfterSass,
'vue-modules': resolveAfterSass,
}
},
'scss': {
oneOf: {
'normal': resolveAfterSass,
'normal-modules': resolveAfterSass,
'vue': resolveAfterSass,
'vue-modules': resolveAfterSass,
}
}
}
}
});
}
};这将添加所有sass/scss代码的url-resolve-loader。
发布于 2018-01-16 01:20:47
解决..。在postcssLoader之后的build/utils.js中添加了它
build/utils.js
exports.cssLoaders = function (options) {
options = options || {}
const cssLoader = {
loader: 'css-loader',
options: {
sourceMap: options.sourceMap
}
}
const postcssLoader = {
loader: 'postcss-loader',
options: {
sourceMap: options.sourceMap
}
}
// added reslve-url-loaderr with sourceMap true
const resolveUrlLoader = {
loader: 'resolve-url-loader',
options: {
sourceMap: options.sourceMap
}
}https://stackoverflow.com/questions/48263520
复制相似问题