Javascript 使用React的嵌套列表
我正在尝试使用不同的输入数据在单独的Javascript 使用React的嵌套列表,javascript,reactjs,recursion,react-redux,Javascript,Reactjs,Recursion,React Redux,我正在尝试使用不同的输入数据在单独的div中创建嵌套列表。打印嵌套列表时遇到问题:list 2此处。我打印对象的name属性,然后检查是否有childNodes也打印这些节点的name属性,即嵌套。这是父类类 export default class Parent extends Component { render() { return ( <div> <h4>List 1</h4> <ul>
div
中创建嵌套列表。打印嵌套列表时遇到问题:list 2
此处。我打印对象的name
属性,然后检查是否有childNodes
也打印这些节点的name
属性,即嵌套。这是父类
类
export default class Parent extends Component {
render() {
return (
<div>
<h4>List 1</h4>
<ul>
{this.props.jsonData1.map(item => {
return <Child name={item.name}/>
})}
</ul>
</div>
<div>
<h4>List 2</h4>
<ul>
{this.props.jsonData2.map(item1 => {
return <Child name={item1.name}/>
if(item1.childNodes){
<ul>
{item1.jsonData2.map(item2=>{
return <Child name={item2.name}/>
})}
}</ul>
})}
</ul>
</div>
);
}
}
我希望能得到一些关于我在这里做错了什么的指导。我试图使递归尽可能简单,但显然我做得不对。看看代码就知道一些事情。在父类的返回中,确保已将所有内容封装在一个div中:
export default class Parent extends Component {
render() {
return(
<div>
//other code
</div>
);
}
}
导出默认类父扩展组件{
render(){
返回(
//其他代码
);
}
}
看看代码就知道一些事情。在父类的返回中,确保已将所有内容封装在一个div中:
export default class Parent extends Component {
render() {
return(
<div>
//other code
</div>
);
}
}
导出默认类父扩展组件{
render(){
返回(
//其他代码
);
}
}
你就快到了,但也许这会引导你走上正确的轨道。每当我们想递归地做一些事情时,我们都想知道我们的基本情况是什么,这样我们就不会再次调用该函数了。所以在我的小例子中,使用你所拥有的
export default class Child extends Component {
render() {
let {name}=this.props;
return (
<li>{name}</li>
);
}
}
你就快到了,但也许这会指引你进入正确的轨道。每当我们想递归地做一些事情时,我们都想知道我们的基本情况是什么,这样我们就不会再次调用该函数了。所以在我的小例子中,使用你所拥有的
export default class Child extends Component {
render() {
let {name}=this.props;
return (
<li>{name}</li>
);
}
}
谢谢。这是很好的解释,但我没有得到任何名单。有什么我没有得到的吗?我没有实现你的整个解决方案,而是关于如何实现的想法和指导。但是如果你有完整的代码,我可以帮你。非常感谢。这是很好的解释,但我没有得到任何名单。有什么我没有得到的吗?我没有实现你的整个解决方案,而是关于如何实现的想法和指导。但是如果你有完整的代码,我可以帮你。