Javascript 树视图数组值更新
我有树状视图数组,需要更新书签键值Javascript 树视图数组值更新,javascript,reactjs,angular,Javascript,Reactjs,Angular,我有树状视图数组,需要更新书签键值true。。 现在我有了id:5使用这个id更新书签值 let articles = [ { "id":1, "title":"sample-magazine", "children":[ { "id":3, "title":"
true
。。
现在我有了id:5
使用这个id更新书签值
let articles = [
{
"id":1,
"title":"sample-magazine",
"children":[
{
"id":3,
"title":"cat1",
"children":[
{
"id":4,
"title":"page1",
"children":[
],
"page":{
"id":2,
"position":2,
"thumbnail":null,
"bookmarked":null
},
"thumbnail":null,
"isCat":false
},
{
"id":5,
"title":"page2",
"children":[
],
"page":{
"id":3,
"position":3,
"thumbnail":null,
"bookmarked":null
},
"thumbnail":null,
"isCat":false
}
],
"page":{
"id":1,
"position":1,
"thumbnail":null,
"bookmarked":null
},
"thumbnail":null,
"isCat":true
}
],
"page":null,
"thumbnail":null,
"isCat":null
}
]
提前感谢您可以做的是递归搜索,当您找到值时,您可以在那里设置它
const search = (tree, target) => {
if (tree.id === target) {
tree.page.bookmarked = true;
}
for (const child of tree.children) {
const res = search(child, target);
if (res) {
return res;
}
}
};
search(articles[0], 5);
console.log(articles)
您可能需要重新格式化数组。它在你的帖子里表现不好。另外,您是否有一些可以发布的数组循环代码?还是你从零开始?