[英]Display images in React using JSX without import
我面臨的問題是img
標簽。 當涉及單個圖像時,以下代碼加載圖像:
import image1 from './images/image1.jpg';
<img src={image1} />
但是下面的代碼沒有加載:
<img src={'./images/image1.jpg'}/>
or
<img src='./images/image1.jpg'/>
我需要遍歷 json,例如:
[{'img':'./images/image1.jpg','name':'AAA'}, {'img':'./images/image2.jpg','name':'BBB'}]
另外,將它們中的每一個顯示為圖像,名稱為頁腳。 循環很好,但圖像無法加載。 我實際上不可能導入要添加的每個圖像。 到目前為止,我不使用 JSX 以外的任何東西。 請賜教。
您需要像這樣要求文件:
<img src={ require('./images/image1.jpg') } />
require
用於靜態“導入”,因此您只需要更改imports
。
例子:
var imageName = require('./images/image1.jpg')
<img src={imageName} />
我們可以使用 require 代替 import 語句。 喜歡 ,
<img src={require("folder/image.format")} alt="image not found" />
但是如果你運行它,它會顯示找不到圖像!!!
我們可以通過添加.default更改語句來簡單地解決它
let image = require("folder/image.format");
<img src={image.default} alt="image not found" />
我剛試過這個,它有效!
import I01d from '../../styles/images/01d.png';
....
<img src={this.getWeatherIconImage(iconCode)}/>
getWeatherIconImage(icon) {
switch (icon) {
case '01d': return I01d; ...
default: break;
}
}
建議的答案似乎不再起作用。 這是一個突出問題的代碼片段。
import React from 'react';
import importImg from '../images/img.jpg';
export default function ImgTest(){
return(<>
<img src={importImg} alt='import'></img><br/>
<img src={require('../images/img.jpg')} alt='require function fails'></img><br/>
</>)
}
呈現此代碼時,會發生以下情況。
第一個顯示圖像 - 它是預期的結果
第二個顯示 alt“要求功能失敗” - 不是預期的結果
這是因為,您已將圖像文件夾放在 src 文件夾中。 所以你應該導入或要求它。 直接把圖片來源放到public文件夾下就可以了,不用導入或使用require,像這樣。
<img src='/images/image1.jpg' />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.