問題
當應用程式第一次加載時。平面串列會發出警告并顯示“警告:串列中的每個孩子都應該有一個唯一的“關鍵”道具。%s%s 請參閱https://reactjs.org/link/warning -獲取更多資訊的鍵。%s"
但此警告僅在第一次加載時出現。再次保存檔案時。平面串列所在的位置警告消失
我試圖通過以不同方式使用密鑰提取器來修復它
1
<FlatList
ref={flatListRef}
data={data}
keyExtractor={(item)=> item._id.toString()}
renderItem={renderItem}
/>
2
const keyExtractor = useCallback((item)=> item.postId,[])
<FlatList
ref={flatListRef}
data={data}
keyExtractor={(item)=> item._id.toString()}
renderItem={renderItem}
/>
但是當第一次加載應用程式時,警告會繼續出現。
問題
什么是使用 keyExtractor 的正確方法以及如何防止警告發生。
解決方案
其中一個渲染組件觸發了一個沒有給定鍵的地圖功能。
uj5u.com熱心網友回復:
如果您正在映射視圖,請檢查您是否使用 (.map) 函式映射任何視圖,然后提供主容器key={index}
uj5u.com熱心網友回復:
嘗試使用這樣的索引
keyExtractor={(item, index) => index.toString()}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/475100.html
上一篇:健全性檔案未顯示
