React&VUE 動態require圖片(轉)


require

在React和VUE里,require路徑上無法使用變量(會因找不到上下文環境而查找失敗),可通過require.context()解決。

變量在路徑上,require找不到上下文環境:
require("../assets/image/" + 變量 + "/img.jpg")

變量是最后的文件名或部分文件名,上下文環境找的到:
require("../assets/image/ipad/" + "變量.jpg")
require("../assets/image/ipad/i" + "變量.jpg")
require("../assets/image/ipad/img" + "變量.jpg")
require("../assets/image/ipad/img.jpg")

解決

require.context()

傳入三個參數分別對應:

  • 路徑
  • 是否向下級目錄查找
  • 正則匹配
const context = require.context("../assets/image/", true, /\.(png|jpg)$/); // 相當於"../assets/image/ipad/img.jpg" context("./ipad/img.jpg");

指定上下文環境后,路徑上可用變量

 
let type = "ipad"; // "../assets/image/ipad/img.jpg" context("./" + type + "/img.jpg");


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM