Webpack反应。配置一个带图片的文件夹
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Webpack反应。配置一个带图片的文件夹相关的知识,希望对你有一定的参考价值。
请帮助配置file-loader,以便在一个项目中使用 这样的结构
我可以用类似的方式从公共文件夹中获取图片。
<img src={"/images/globalx_logo.svg"} className="globalx-logo"/>
在尝试做一些事情时,我写了这个webpack.config.js:
var path = require('path')
module.exports = {
entry: "./src/index.js",
output: {
path: path.resolve(__dirname, './output'),
publicPath: '/output/',
filename: 'bundle.js'
},
devServer: {
historyApiFallback: true,
},
module: {
rules: [
{
test: /\.m?js$/,
exclude: /(node_modules|bower_components)/,
loader: "babel-loader",
options: {
presets: ["@babel/preset-env", "@babel/preset-react"]
}
},
{
test: /\.s[ac]ss$/i,
use: [
'style-loader',
'css-loader',
'sass-loader'
]
},
{
test: /\.(jpg|png|gif|svg)$/,
loader: 'file-loader',
options: {
name: '[name].[ext]',
publicPath: './public/',
outputPath: './output/public/'
}
}
]
}
}
答案
你可以使用这样的加载器
{
test: /\.(jpg|png|gif|svg)$/,
use: [
{
loader: 'url-loader',
options: {
limit: 1000000,
fallback: 'file-loader',
name: 'images/[name].[hash].[ext]',
}
}
]
}
并使用导入
import logo from '/images/globalx_logo.svg'
<img src={logo} className="globalx-logo"/>
以上是关于Webpack反应。配置一个带图片的文件夹的主要内容,如果未能解决你的问题,请参考以下文章
如何在故事书中配置 webpack 以允许 babel 在项目文件夹之外导入反应组件