-
情景:在 vue 组件获取了 js 里存储的数据后,想要给获取的 list 的每一条数据加上相同的属性作为公共部分
// 页面打开即加载方法 mounted() { this.init() }, methods:{ init(){ // 给新的进行重新赋d: this.xAxisStyle.forEach((xAxis) => { xAxis.data = this.xAxisData; }) this.series.forEach((series) => { series.smooth = this.smooth; series.type = this.seriesType; series.showSymbol = this.showSymbol; // 注意,在js里要存在emphasis这一属性,只是{}空的也好,否则会显示找不到emphasis属性 series.emphasis.disabled = this.showGl; // 还可以获取每次循环的name属性值并存储 if (series.hasOwnProperty('name')) { this.dataTl.push(series.name); } }) // 如果有需要还可以用for循环 —— 指存在根据循环次数而改变的属性时 for (let i = 0; i < this.grid.length; i++) { // 使用展开运算符创建新的对象(保留着原属性数据) let newGrid = {...this.grid[i]}; newGrid.left = this.gridLeft + '%'; newGrid.width = this.gridWidth + '%'; newGrid.height = this.gridHeight + '%'; // 第i个的top为百分之(this.gridTop + i*newGrid.height + i*this.gridJX) newGrid.top = (this.gridTop + this.gridHeight*i + this.gridJx*i) + '%'; // 将新的对象添加到 grid 数组中 option.grid.push(newGrid); } } }