gpt4 book ai didi

javascript - 如何使用 webpack + react 渲染图像?

转载 作者:行者123 更新时间:2023-11-29 23:17:30 24 4
gpt4 key购买 nike

我对 React 和 webpack 还很陌生,我遇到了这个我不明白的奇怪问题。

问题:

enter image description here

当我检查图像时,上面是我看到的,显然没有显示我的图像。我正在使用文件加载器。

我的结构:

enter image description here

网页包:

const path = require("path");
const webpack = require("webpack");

const bundlePath = path.resolve(__dirname, "dist/");

module.exports = {
entry: "./src/index.js",
module: {
rules: [
{
test: /\.(js|jsx)$/,
exclude: /(node_modules|bower_components)/,
loader: "babel-loader",
options: { presets: ["env"], plugins: ["transform-class-properties"] },
},
{
test: /\.js$/,
exclude: /node_modules/,
use: ["eslint-loader"],
},
{
test: /\.css$/,
use: ["style-loader", "css-loader"],
},

{
test: /\.(png|jpg|gif)$/,
use: [
{
loader: "file-loader",
options: {},
},
],
},
],
},
resolve: { extensions: ["*", ".js", ".jsx"] },
output: {
publicPath: bundlePath,
filename: "bundle.js",
},
devServer: {
contentBase: path.join(__dirname, "public"),
port: 8080,
publicPath: "http://localhost:8080/dist",
historyApiFallback: true,
},
plugins: [new webpack.HotModuleReplacementPlugin()],
};

我错过了什么?

编辑:

像这样导入图像:

import headerImage from "../../../../public/images/MyImage.jpg"

像这样渲染:

class Header extends Component {
linkClick = event => {
if (this.props.properties.movment.position.x > 0) event.preventDefault();
};
render() {
return (

<Navbar inverse fluid >

<Navbar.Header>
<Navbar.Brand>
<Image src={headerImage}/>
</Navbar.Brand>
<Navbar.Toggle />
</Navbar.Header>

<Navbar.Collapse>
<Nav pullRight>
<HeaderLinks linkClicked={this.linkClick} />
</Nav>
</Navbar.Collapse>

</Navbar>
);
}
}

最佳答案

var requireImages = require.context('../public/images', true, /\.(jpg|png|gif|svg)$/);

您可以将上述代码插入到您的 index.js 文件中,以直接从应用程序的任何位置引用您的图像。

您也可以继续使用 <Image src="./public/images/MyImage.jpg" />在您的头文件中,而无需单独导入每个图像。

编辑:请检查路径并确保它指向 dist>public>images 文件夹中的图像

关于javascript - 如何使用 webpack + react 渲染图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52208817/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com