From 9892cce975fb53876f90a48ab74a8e108f8b76ac Mon Sep 17 00:00:00 2001 From: hyx Date: Fri, 22 May 2020 09:45:23 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E6=94=B9=E9=97=AE?= =?UTF-8?q?=E9=A2=98=201=20panel=E9=A1=B5=E9=9D=A2=E5=9B=BE=E8=A1=A8?= =?UTF-8?q?=E7=9A=84duplicate=E5=8A=9F=E8=83=BD=EF=BC=9A=E5=A4=8D=E5=88=B6?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E5=80=99=E5=90=8E=E5=8F=B0=E6=8A=A5=E9=94=99?= =?UTF-8?q?Duplicate=20keys=20detected?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/charts/chart-list.vue | 23 ++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/nezha-fronted/src/components/charts/chart-list.vue b/nezha-fronted/src/components/charts/chart-list.vue index 0d11ac647..c5c9d720a 100644 --- a/nezha-fronted/src/components/charts/chart-list.vue +++ b/nezha-fronted/src/components/charts/chart-list.vue @@ -668,7 +668,7 @@ export default { this.dataTotalList = chartListTmp; } - this.dataList = this.dataTotalList; + this.dataList = [...this.dataTotalList]; this.$nextTick(() => { if (this.dataList.length > 0 ) { this.dataList.forEach((item,index) => { @@ -1008,7 +1008,7 @@ export default { }); if(this.$refs['editChart'+chartItem.id] && this.$refs['editChart'+chartItem.id].length>0) { - const chartData = { + let chartData = { chartItem:chartItem, series:series, singleStatRlt:singleStatRlt, @@ -1131,6 +1131,7 @@ export default { duplicateChart.prev = duplicateChartBack.prev; duplicateChart.next = duplicateChartBack.next; duplicateChart.title = duplicateChartBack.title; + duplicateChart.elements = duplicateChartBack.elements; if(chartNext){ chartNext.prev = duplicateChartId; } @@ -1157,7 +1158,23 @@ export default { this.currentRecordNum = this.currentRecordNum+1; let chartData = this.chartDataCacheGroup.get(chart.id); - this.chartDataCacheGroup.set(duplicateChartId,chartData); + console.log("__chartItem00__",JSON.stringify(chartData)) + + let duplicateChartData = JSON.parse(JSON.stringify(chartData)); + /* + let chartData2 = { + chartItem:chartItem, + series:series, + singleStatRlt:singleStatRlt, + legend:legend, + tableData:tableData, + panelId:this.filter.panelId, + filter:this.filter, + filterType:filterType, + errorMsg:errorMsg, + }*/ + duplicateChartData.chartItem = duplicateChart; + this.chartDataCacheGroup.set(duplicateChartId,duplicateChartData); this.$nextTick(() => { if (this.$refs['editChart'+duplicateChartId][0]) { this.$refs['editChart'+duplicateChartId][0].showLoad(duplicateChart);//之后要实现