1 回答

TA貢獻1765條經驗 獲得超5個贊
很明顯你不知道 JavaScript 對象和子調用。當你調用一個孩子但它的父母不存在時,你肯定會在TextReact Native 的組件中遇到錯誤,你應該至少傳遞一個空字符串。
你應該防御性地培養孩子的連鎖呼喚。為此,我建議您閱讀有關可選鏈接的信息,并使用此鏈接將其添加到您的項目中。
安裝后可以編寫如下_renderItem函數:
_renderItem = item => (
<View style={{ flex: 1 }}>
<Text>{item}</Text>
<Text>{GLOBAL?.products[item]?.title || ''}</Text>
</View >
);
或者有一個更好的使用方法,通過使用orlodash.get安裝它,然后像下面這樣使用它:yarn add lodash.getnpm install --save lodash.get
import get from 'lodash.get';
~~~
_renderItem = item => (
<View style={{ flex: 1 }}>
<Text>{item}</Text>
<Text>{get(GLOBAL, ['products', 'item', 'title'], '')}</Text>
</View >
);
我更喜歡第二個。這種防御性編程可防止您的應用程序崩潰
添加回答
舉報