트리 스타일의 HTML을 만들려고합니다. (React 포함)React Component 오브젝트에 키를 추가하는 방법
이것은 Node 클래스이며 자식 노드를 포함합니다.
class Node extends React.Component {
constructor(props) {
super(props);
this.state = {
children: []
};
}
render() {
return <div id={this.props.id} className="person">
<div className="info">
<div className="name">{this.props.name}</div>
</div>
<div className="childrenWrap">
<div className="children">
{this.state.children}
</div>
</div>
</div>;
}
addChild(node) {
this.setState({children: this.state.children.concat(node)});
}
}
//////////////
let tree = document.querySelector("#tree");
let root = ReactDom.render(<Person id="root" name="A" />, tree);
root.addChild(<Person id="child1" name="B" />);
root.addChild(<Person id="child2" name="C" />);
root.addChild(<Person id="child3" name="D" />);
경고 : '배열이나 반복기의 각 하위에는 고유 한 "키"소품이 있어야합니다.'
key={this.props.id}
다음에 id={this.props.id}
을 추가하십시오.
하지만 해결되지 않음이 문제를 어떻게 해결할 수 있습니까?
그러면 자녀를 추가하는 가장 좋은 방법은 무엇입니까? @WebEngine 데이터 구조를 전달하여 –
예. {{id : "child1", name : "B"}, {id : "child2", name : "C"}, {id : "child3" 이 데이터에 – pwolaq