【发布时间】:2016-11-04 14:56:40
【问题描述】:
我正在创建一个列表列表,并希望为每个元素放置一个唯一键。当我使用 React Dev Tool 时,新键是“2016-10,-,football”。
- 为什么里面有逗号?
- 当我想要“2016-10-football”时,指定键的正确方法是什么?
import React from 'react'
import ReactDOM from 'react-dom'
const dates = ['2016-10', '2016-11', '2016-12'];
const sports = ['football', 'baseball', 'basketball'];
const Dates = ( { dates, sports } ) => {
return (
<ul>
{ dates.map( date => {
return (
<div key={date.toString()} >
<li>{date}</li>
<Sports sports={sports} date={date}/>
</div>
)
})
}
</ul>
)
}
const Sports = ( { date, sports } ) => {
return(
<ul>
{ sports.map( sport => {
// Results in: key="2016-10,-,football"
// Expected: key="2016-10-football"
return (<li key={[date, '-', sport]} >{sport}</li>)
})}
</ul>
)
}
ReactDOM.render(<Dates dates={dates} sports={sports}/>, document.getElementById('main'))
【问题讨论】:
标签: reactjs