From 3f1db171258991f5bef1a589ea831787c8cdd67b Mon Sep 17 00:00:00 2001 From: Dmitry Borisenko <49808844+DmitryBorisenko33@users.noreply.github.com> Date: Wed, 31 Aug 2022 23:46:43 +0200 Subject: [PATCH] =?UTF-8?q?=D0=B2=D0=B2=D0=BE=D0=B4=20=D0=B2=20=D1=8D?= =?UTF-8?q?=D0=BA=D1=81=D0=BF=D0=BB=D0=B0=D1=82=D0=B0=D1=86=D0=B8=D1=8E=20?= =?UTF-8?q?=D0=B3=D1=80=D0=B0=D1=84=D0=B8=D0=BA=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/Dashboard.svelte | 2 +- src/widgets/Chart.svelte | 42 +++++++++++++++++++++++++------------- 2 files changed, 29 insertions(+), 15 deletions(-) diff --git a/src/pages/Dashboard.svelte b/src/pages/Dashboard.svelte index 91f8630..9dbe1a2 100644 --- a/src/pages/Dashboard.svelte +++ b/src/pages/Dashboard.svelte @@ -16,7 +16,7 @@ {#if show} -
+
{#if layoutJson === []} {/if} diff --git a/src/widgets/Chart.svelte b/src/widgets/Chart.svelte index 9d9c901..11090f4 100644 --- a/src/widgets/Chart.svelte +++ b/src/widgets/Chart.svelte @@ -19,13 +19,12 @@ lineOptions = { regionFill: 1, dotSize: 3, spline: 1 }; } - let labels = ["", ""]; - let values = ["", ""]; + let collectingDataArray = []; + let prevSatus = []; - //let datachart = { - // labels: [], - // datasets: [], - //}; + //необходимые по умолчанию значения из за тупости библиотеки + let labels = [0, 0]; + let values = [0, 0]; let datachart = { labels: labels, @@ -37,15 +36,30 @@ ], }; - $: widget.status, calc(); + $: widget.status, collectDataToArr(); - function calc() { - if (widget.status) { - let dataArr = widget.status; - for (let i = 0; i < dataArr.length; i++) { - chartRef.addDataPoint(getHHMM(dataArr[i].x), [dataArr[i].y1]); + function collectDataToArr() { + //отсекаем лишние события изменения переменной widget + if (prevSatus !== widget.status) { + console.log("[i]", "collecting chart data"); + let incomingDataArr = widget.status; + collectingDataArray = [...collectingDataArray, ...incomingDataArr]; + + for (let i = 0; i < collectingDataArray.length; i++) { + labels[i] = getHHMM(collectingDataArray[i].x); + values[i] = [collectingDataArray[i].y1]; } - console.log("-------------------------calc-------------------------"); + + datachart = { + labels: labels, + datasets: [ + { + name: widget.descr, + values: values, + }, + ], + }; + prevSatus = widget.status; } } @@ -60,4 +74,4 @@ - +