如何在Webpack的`background-image`中使用CSS变量?

我想在我的SCSS文件中使用以下代码:

.x {
  --image: '/path/img.svg';
  background-image: url(var(--image));
}

但是编译失败并显示以下错误:

ModuleNotFoundError:未找到模块:错误:无法解析'./-- image'

这里有一些技巧可以逃脱模块的解析吗?


Webpack配置中的加载器:

{
  test: /\.(png|jpg|gif|svg)$/,loader: 'file-loader',options: {
    name: '[name].[ext]',},{
  test: /\.scss$/,use: [
    'style-loader',MiniCssExtractPlugin.loader,{
      loader: 'css-loader',options: {sourceMap: true},{
      loader: 'postcss-loader',options: {sourceMap: true,config: {path: `./postcss.config.js`}},{
      loader: 'sass-loader',],}
ZIer0921 回答:如何在Webpack的`background-image`中使用CSS变量?

如果您不在香草CSS上,为什么还要声明使用这样的变量?您可以这样做:

$image = '/path/img.svg';

.x { 
  background-image: url($image);
}

编辑

对于直接CSS,您有语法错误,请尝试以下操作:

.x {
  --image: '/path/img.svg';
  background-image: url(var(--image));
}
,

它对我有用:

.x {
  --image: url(/path/img.svg);
  background-image: var(--image);
}
本文链接:https://www.f2er.com/2788700.html

大家都在问