一、react中圖片引入方式
以前我們用img引入圖片只需要如下即可,在react中這樣寫會報錯:
<img src="../assets/zzsc1.png" />
下面我總結了兩種方式:
1、用require方式引入路勁: 錯誤用法:
<img src={require("./zzsc1.png")} />
上面這樣寫也是不會生效的,因為如果使用create-react-app和require導入圖像,require返回一個ES模塊而不是字符串。這是因為在file-loader中,esModule選項是默認啟用的。
所以用以下方式之一導入圖像:后面加上.default即可
<img src={require("./zzsc1.png").default} />
2、通過!important引入
import zzsc from "./zzsc1.png"
然后在img中直接引入變量即可,這個變量名字可任意取
<img src={zzsc} />
效果圖如下:


然而有的時候你開發環境圖片顯示出來了,但是在打包后部署到測試環境上時會發現,圖片又沒了,抓耳撓腮,想不明白問題出在哪里。其實很簡單,由於部署的時候增加了二級域名,但是打包后的文件l中引入的靜態資源路徑是從根目錄引入的,其實在根域名下並沒有這個靜態資源,導致引入失敗,無法加載,public為根目錄,在打包時只能檢索到你public文件夾下的圖片,所以在放圖片素材的時候,圖片位置也非常重要!統一都放到public文件下即可。上代碼:
<img src='images/zzsc2.png' />

