出于某種原因,我在回傳以下代碼時收到“串列中的每個子項都應該具有唯一鍵”錯誤。我不明白為什么會發生這種情況,因為我在映射期間專門分配了鍵:
return (
<>
{sortfeedCards(feedCards)}
{loggedIn === true ? (feedCardsMod.map((card, index) => (
<>
<p>{index}</p>
<FeedCard key={index} cardData={card} loggedIn={loggedIn} />
</>
))) : ('')}
</>
)
這是渲染的樣子..在我看來索引變數確實有效:

提前謝謝了!
uj5u.com熱心網友回復:
關鍵需要在最外面的元素上,所以在 Fragment 上,而不是 FeedCard:
feedCardsMod.map((card, index) => (
<React.Fragment key={index}>
<p>{index}</p>
<FeedCard cardData={card} loggedIn={loggedIn} />
<React.Fragment/>
))
(<></>片段的速記語法不允許使用鍵,所以我切換到React.Fragment顯式使用)
uj5u.com熱心網友回復:
試試這個:
return (
<>
{sortfeedCards(feedCards)}
{loggedIn === true ? (feedCardsMod.map((card, index) => (
<div key={index}>
<p>{index}</p>
<FeedCard cardData={card} loggedIn={loggedIn} />
</div>
))) : ('')}
</>
)
封閉標簽中的鍵必須是唯一的:https : //reactjs.org/docs/lists-and-keys.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/378832.html
標籤:javascript 反应 钥匙
