我尝试编写自己的自定义组件,但它不起作用,因为我希望。交互似乎没问题,但它只是渲染数组的最后一项。自定义组件失败,地图
export default class MyComponent extends Component {
constructor() {
super()
this.state = {
openItems: false,
selectedItem: 'Please select'
}
}
render() {
const { items, className } = this.props
const { openItems, selectedItem } = this.state
return (
<div className={classnames('myComponent', className)}>
<div tabIndex="1"
onBlur={() => this.setState({ openItems: false })}
onFocus={() => this.setState({ openItems: true })}>
{selectedItem}
<div className={classnames({'show': openItems === true, 'hide': openItems === false})}>
{items.map((obj, i) => {
return(
<li onClick={() => this.setState({ selectedItem: obj.name, openItems: false })}
key={i}>
{obj.name}
</li>
)
})}
</div>
</div>
</div>
)
}
}
和地方我使用的成分这样
<MyComponent items={[{
name: 'abc',
name: 'def',
name: 123
}]} />
我不知道这个错误是什么。
试图通过对象的数组:[{名称:“ABC”},{名称:'def'},{名称: 123}] 你现在只有一个对象在数组中。 – AppleJam
嘿!你可能会提到这个问题中的错误。 –