【发布时间】:2019-07-04 02:40:53
【问题描述】:
我有一个像这样的 VueJS 数据存储...
nodes: {
id: '001',
name: 'name1',
text: 'test1'
children: [
{
id: '002',
name: 'name2',
text: 'test2'
},
{
id: '003',
name: 'name3',
text: 'test3'
children: [
{
id: '0002',
name: 'name02',
text: 'test02',
children: [
{
id: '0002',
name: 'name02',
text: 'test02'
}
]
}
]
},
{
id: '004',
name: 'name4',
text: 'test4'
}
]
}
注意:儿童级别(深)是无限的
我需要通过其 id 选择每个并添加/更新其兄弟值。
示例:“选择 id: 003 并添加一个 text2: hello '
nodes: {
id: '001',
name: 'name1',
text: 'test1'
children: [
{
id: '002',
name: 'name2',
text: 'test2'
},
{
id: '003',
name: 'name3',
text: 'test3',
text2: 'hello'
},
{
id: '004',
name: 'name4',
text: 'test4'
}
]
}
我设法使用method 来完成添加/更新部分:
this.$set(this.nodes, 'text2', 'hello')
我坚持按 id 部分选择。有谁知道怎么做?
PS:我是 VueJS 的新手。
【问题讨论】:
-
"children's level (deep) is UNLIMITED" 这是否意味着除了您显示的对象之外,它还可能包含嵌套数组?如果是这样,请举例说明您的数据中的情况。如果不是,这是 stackoverflow.com/questions/7364150/… 的副本
-
@DanielBeck 不幸的是,它包含嵌套的子元素......但除了我提到的对象之外。我刚刚更新了问题的示例数组。
-
好的,请举个例子;有很多可以结构化的方法,这会影响答案。
-
@DanielBeck 更新了! ID 也是唯一的。
标签: jquery html laravel vue.js vuejs2