HUWWW
2022-06-09 16:11:02
我想根據從 API 調用獲得的狀態加載圖像。例如,如果 API 給我'1',我想加載1.png. 不幸的是,我收到了上述錯誤。這是我的代碼let img = info.WeatherIcon ? require(`../../img/icons/${info.WeatherIcon}.png`) : require('../../img/icons/7.png')< Image style = {{ width:120, height:120}} source = { img } />
1 回答

梵蒂岡之花
TA貢獻1900條經驗 獲得超5個贊
您不能使用動態鏈接。根據 React-Native,在編譯包之前需要加載所有圖像源。
所以改變你的代碼如下,
let img =
info.WeatherIcon == "1"
? require("../../img/icons/1.png")
: require("../../img/icons/7.png");
然后你可以渲染你的Image
<Image style={{ width: 120, height: 120 }} source={img} />
對于更復雜的示例,您可以使用如下條件,
switch (info.WeatherIcon) {
case "1":
return require("../../img/icons/1.png");
case "2":
return require("../../img/icons/2.png");
case "3":
return require("../../img/icons/3.png");
default:
return require("../../img/icons/7.png");
}
希望這對您有所幫助。隨意質疑
添加回答
舉報
0/150
提交
取消