数组内对象重复问题:如何避免dataset嵌套重复?
问题描述
我想要生成如下格式的数据结构:
dataset: [ { seriesname: "", data: [ { value: "123", }, { value: "123", }, ] }, ]
但现在生成的结构里出现了重复的dataset字段,变成了两层嵌套的dataset结构,这不是我想要的。
我的数据设置代码如下(val为整数,allYears为整数数组):
this.grphColumn.dataSource.dataset[0].dataset = this.allYears.map(el => { return { seriesname: "Planned", data: [{value: val}, {value: val}] } });
请问怎么修改才能避免dataset重复?
解决方案
问题根源是你给dataset[0].dataset赋值,这会在原dataset数组的第一个元素里再嵌套一层dataset字段,导致结构重复。
根据你的期望结构,直接把map生成的数组赋值给外层的dataset即可:
this.grphColumn.dataSource.dataset = this.allYears.map(el => { return { seriesname: "Planned", data: [{value: val}, {value: val}] } });
如果你的数据源需要保留原dataset数组的结构,只是替换第一个元素的内容(而非嵌套dataset),可以改成这样:
this.grphColumn.dataSource.dataset[0] = this.allYears.map(el => { return { seriesname: "Planned", data: [{value: val}, {value: val}] } });
内容的提问来源于stack exchange,提问作者feng0
相关产品推荐
相关产品推荐

