所以我从父组件中获取道具。让我们说该属性具有如下数据结构:[{a:" a",b:" b"},{c:" c&# 34;,d:" d"} ...]
这是得到这个道具的组件。
class Child extends Component {
constructore(props){
super();
this.state = {items: []}
// props.name {a: "a", b: "b"}
}
render(){
return(
)
}
}
现在,在我在子组件中渲染它之前,我想将其映射到其他类似的东西
for (let key in names){
items.push(<MenuItem value={names[key]}
key={key} primaryText={names[key]} />);
}
最终结果将是。
class Child extends Component {
constructore(props){
super();
this.state = {items: [<MenuItem value={"a"}>,
<MenuItem value{"b"},....etc
}
render(){
return(
)
}
}
答案 0 :(得分:2)
您可以执行以下操作 我将您的阵列修改为
[{key: "a", value:"b"}, {key:"c", value:"d"}...]
我希望这个必要条件可以改变,仍然适用于你的挑战
class Child extends Component {
constructor(props){
super(props);
}
render(){
return this.props.items.map((item)=> {
return <MenuItem key={item.key} value={item.value}/>;
})
}
}
这通常是一种很好的反应模式。到处使用它:))