最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

如何在React中显示从Express服务器获取的图像?

运维笔记admin9浏览0评论

如何在React中显示从Express服务器获取的图像?

如何在React中显示从Express服务器获取的图像?

我只是对如何从源文件夹正确提供资产感到困惑。

相关的服务器端代码(客户端向/ images发出请求,服务器发送回文件名):

const images = './static/images/';
app.use(express.static('static/images'))

app.get('/images', (req, res) => {
    res.setHeader('Content-Type', 'application/json');
    fs.readdir(images, (err, files) => {
        res.send(files);
      });
});

我的目录结构如下:

public
   index.html
server (houses Node/Express code)
   index.js
src (houses React code)
   App.js
static
   images
      image1, image2, image4, image4

如果我尝试在React中显示图像(state.currImage是4个文件名之一):

<img alt="scan" src={ require(this.state.currImage)}

我收到一条错误消息:“未处理的拒绝(错误):找不到模块'./static/images/file1.jpg']

回答如下:

[您似乎可以从图像加载中删除require,因为它是图像的路径而不是javascript模块的路径。

<img alt="scan" src={this.state.currImage}

您可能需要更新这些图像的URL以指向服务器URL。现在,字符串为./static/images/file1.jpg,但可能需要为/images/file1.jpg

发布评论

评论列表(0)

  1. 暂无评论