你有一些有效的示例配置吗?
为webpack设置:
{
test: /\.scss$/,
use: ['style-loader', {
loader: 'css-loader',
options: {
modules: true,
localIdentName: '[local]--[hash:base64:5]',
},
}, 'sass-loader'],
},
用法:
background: url('~assets/arrow-white.svg') center no-repeat;
输出:
Module not found: Error: Can't resolve './assets/arrow-white.svg'
我可以省略~
或使用~/../assets
但它有效,但我想只使用~
。
~
https://github.com/webpack-contrib/css-loader/issues/589一起使用,CSS模块会破坏构建答案 0 :(得分:1)
我只是复制你的评论,以便你可以关闭这个问题
问题是css-modules模式改变了路径分辨率和 不尊重webpack模块的分辨率
答案 1 :(得分:0)
使用此程序包https://github.com/P0lip/url-tilde-loader
// In your webpack config
{
test: /\.s?css$/,
use: [
'style-loader',
{
loader: "css-loader",
options: {
modules: true,
},
},
{
loader: 'url-tilde-loader'
options: {
replacement: '~/../', // string to replace with
traverse: false, // use manual traversing
},
},
]
}