首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Webpack不从CSS背景图像属性加载图像

Webpack不从CSS背景图像属性加载图像
EN

Stack Overflow用户
提问于 2016-02-27 04:33:21
回答 1查看 13.9K关注 0票数 2

我不知道该怎么做。我使用的是带有CSS,style,sass和手写笔加载器的Webpack。这是我的webpack配置。当我使用如下命令时,图像不会显示:

代码语言:javascript
复制
body
    background-image: url('bg.jpg')

如果我在带有<img>标签的超文本标记语言中包含图片,它们可以正常工作...

我的webpack配置:

代码语言:javascript
复制
var path = require('path')

module.exports = {
  entry: {
    app: './src/main.js'
  },
  output: {
    path: path.resolve(__dirname, '../dist/static'),
    publicPath: '/static/',
    filename: '[name].js'
  },
  resolve: {
    extensions: ['', '.js', '.vue'],
    alias: {
      'src': path.resolve(__dirname, '../src')
    }
  },
  resolveLoader: {
    root: path.join(__dirname, 'node_modules')
  },
  module: {
    preLoaders: [
      {
        test: /\.vue$/,
        loader: 'eslint',
        exclude: /node_modules/
      },
      {
        test: /\.js$/,
        loader: 'eslint',
        exclude: /node_modules/
      }
    ],
    loaders: [
      {
        test: /\.vue$/,
        loader: 'vue'
      },
      {
        test: /\.js$/,
        loader: 'babel',
        exclude: /node_modules/
      },
      {
        test: /\.json$/,
        loader: 'json'
      },
      {
        test: /\.scss$/,
        loaders: ['style', 'css?sourceMap', 'sass?sourceMap']
      },
      {
        test: /\.woff/,
        loader: 'url?prefix=font/&limit=10000&mimetype=application/font-woff'
      }, {
        test: /\.ttf/,
        loader: 'file?prefix=font/'
      },
      {
        test: /\.eot/,
        loader: 'file?prefix=font/'
      },
      {
        test: /\.svg/,
        loader: 'file?prefix=font/'
      },
      {
        test: /\.(jpe?g|png|gif|svg)$/i,
        loaders: [
          'url?limit=10000&name=[name].[ext]?[hash:7]',
          'image-webpack?{progressive:true, optimizationLevel: 7, interlaced: false, pngquant:{quality: "65-90", speed: 4}}'
        ]
      }
    ]
  },
  eslint: {
    formatter: require('eslint-friendly-formatter')
  },
  vue: {
    loaders: {
      sass: 'style!css!sass?indentedSyntax'
    }
  }
}
EN

回答 1

Stack Overflow用户

发布于 2016-02-29 22:33:39

您需要使用~进行prepend the image url。这告诉Sass加载器使用webpack的require分辨率来解析文件路径;默认情况下,它将像普通的Sass镜像url()一样解析。所以它应该是background-image: url('~bg.jpg') --然后只需确保webpack知道(通过您的配置)如何找到bg.jpg所在的目录。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35661197

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档