1 回答
TA贡献1802条经验 获得超5个赞
你的代码完美运行。我怀疑这是你创建对象的方式。
在这里,我只是提供了一个id, 字符串 asname并发送到您的children对象中。您的代码未经修改即可创建您所期望的内容:
class Item {
constructor(id, name, children = []) {
this.id = id;
this.name = name;
this.children = children.map((child) => {
return new Item(child.id, child.name, child.children)
});
}
test() {
console.log("Test");
}
//...
}
let children = [{
id: 1,
name: 'foo'
},
{
id: 2,
name: 'bar'
},
{
id: 3,
name: 'foobar',
children: [{
id: 4,
name: 'foo'
},
{
id: 5,
name: 'bar'
},
]
},
];
let newItem = new Item(1, 'item', children)
console.log(newItem)
添加回答
举报