From ac7bb93a3795d196a201cef93881027bddca2156 Mon Sep 17 00:00:00 2001 From: roymondchen Date: Thu, 6 Jun 2024 17:40:13 +0800 Subject: [PATCH] =?UTF-8?q?fix(data-source):=20=E9=BB=98=E8=AE=A4=E4=BA=8B?= =?UTF-8?q?=E4=BB=B6=E5=A4=84=E7=90=86=E6=94=AF=E6=8C=81path=E4=B8=BA?= =?UTF-8?q?=E7=A9=BA=E5=AD=97=E7=AC=A6=E4=B8=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/observed-data/SimpleObservedData.ts | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/data-source/src/observed-data/SimpleObservedData.ts b/packages/data-source/src/observed-data/SimpleObservedData.ts index 77db4f05..ba8cb82c 100644 --- a/packages/data-source/src/observed-data/SimpleObservedData.ts +++ b/packages/data-source/src/observed-data/SimpleObservedData.ts @@ -12,6 +12,7 @@ export class SimpleObservedData extends ObservedData { super(); this.data = initialData; } + update(data: any, path?: string): void { if (path) { setValueByKeyPath(path, data, this.data); @@ -23,16 +24,25 @@ export class SimpleObservedData extends ObservedData { updateData: data, path: path ?? '', }; - this.event.emit(path ?? '', changeEvent); + + if (path) { + this.event.emit(path, changeEvent); + } + + this.event.emit('', changeEvent); } + on(path: string, callback: (newVal: any) => void): void { this.event.on(path, callback); } + off(path: string, callback: (newVal: any) => void): void { this.event.off(path, callback); } + getData(path: string) { return path ? getValueByKeyPath(path, this.data) : this.data; } + destroy(): void {} }