当前位置: 首页 > 面试题库 >

如何在Webpack中使用CSS中的图像

曾河
2023-03-14
问题内容

我正在做一个带有Webpack设置的React,并且正在努力做应该看起来很简单的事情。我希望webpack包含图像,并像使用gulp一样将其最小化,但我无法弄清楚。我只希望能够像这样在我的CSS中链接图像:

/* ./src/img/background.jpg */

body { background: url('./img/background.jpg'); }

我所有的css / js / img文件夹都放在src文件夹中。Webpack输出到dist文件夹,但是我不知道如何在那里获取图像。

这是我的webpack设置:

 var path = require('path');
 var webpack = require('webpack');
 var HtmlWebpackPlugin = require('html-webpack-plugin');

 module.exports = {
  devtool: 'cheap-eval-source-map',
  entry: [
   'webpack-dev-server/client?http://localhost:8080',
   'webpack/hot/dev-server',
   './src/index.js'
  ],
  output: {
  path: path.join(__dirname, 'dist'),
  //  publicPath: './dist',
  filename: 'bundle.js'
  },
  plugins: [
  new webpack.HotModuleReplacementPlugin(),
  new HtmlWebpackPlugin({
  template: './src/index.html'
   })
  ],
  module: {
  loaders: [{
   exclude: /node_modules/,
   test: /\.js?$/,
   loader: 'babel'
   }, {
  test: /\.scss$/,
  loader: 'style!css!sass'
    }, {
  test: /\.(png|jpg)$/,
  loader: 'file-loader'
  }]
 },

 devServer: {
  historyApiFallback: true,
  contentBase: './dist',
  hot: true
  }
};

问题答案:

我陷入类似的问题,发现您可以像其他任何require或import语句一样使用它url- loader来解析"url()"CSS中的语句。

要安装它:

npm install url-loader --save-dev

它将安装可以将解析路径转换为BASE64字符串的加载程序。

在您的webpack配置文件中,在加载器中使用url-loader

{
  test: /\.(png|jpg)$/,
  loader: 'url-loader'
}

另外,请确保正确指定了公共路径以及要加载的图像的路径。



 类似资料:
  • 我有自己的scss文件,但也需要加载jquery-ui CSS。为了实现这一点,我添加了以下webpack配置规则。 备注版本: 我的js条目文件中的下一个:

  • 问题内容: 我想将所有图像都放在CSS中(我知道的唯一方法是将它们作为背景图像放置)。 但是此解决方案中的问题是您永远不能让div占用图像的大小。 所以我的问题是:在CSS中拥有等效功能的最佳方法是什么 ? 问题答案: Jaap的回答: 和在CSS中: 这已经在Chrome,firefox和Safari上进行了测试。(我在Mac上,所以如果有人在IE上有结果,请告诉我添加它)

  • 我无法在React组件中显示图像。经过多次尝试(尝试了这个,这个,这个,这个,这个,这个和这个)和错误之后,我请求帮助。我正在开发构建(不是生产构建)。 我仍然得到这个错误: 组成部分 网页包配置: 目录结构 如何显示图像? 这里的示例代码: githublink查看 /src/components/home/HomePage.js 我可以做些什么来查看主页上的图像?

  • 我刚刚开始学习Laravel,可以做控制器和路由的基础知识。 我的操作系统是MacOSXLion,它在MAMP服务器上。 我的代码从routes.php: 这很有效,视图显示得非常完美,“但是”我想尝试在视图中包含CSS,我尝试在目录中添加指向样式表的链接,但是页面将其显示为默认浏览器字体,即使CSS在HTML中! 这是从视图文件夹中的企业index.php的: 我尝试在我的“其他视图”文件夹(测

  • 问题内容: 我听说我们可以在CSS中声明/定义变量,并将其像全局变量一样使用: 所以有人知道如何使用它们吗? 问题答案: 为此,您需要使用CSS动态语言的 Less 或 Sass。

  • 在我的网站上,我有一个画廊,里面有我和我女朋友的一些照片,但是有两张照片是颠倒显示的。我不知道为什么。所有其他照片都是完美的。每张照片都是由同一个iPhone7拍摄的,但是前两张照片在网站上是颠倒的。在我的电脑上,它们显示得非常完美。 以下是网站:www.selinundleon。com/图库。有人能帮我解决这个问题吗?非常感谢你。