From c628840721ef1c644539bdd912d1f70c9aea2480 Mon Sep 17 00:00:00 2001 From: Tim Deschryver <28659384+timdeschryver@users.noreply.github.com> Date: Wed, 7 Feb 2024 22:09:18 +0100 Subject: [PATCH] fix: ignore initial value to set dirty state --- apps/example/src/app/basic-form/basic-form.component.ts | 7 +++++-- packages/platform/src/lib/form-field.ts | 5 ++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/apps/example/src/app/basic-form/basic-form.component.ts b/apps/example/src/app/basic-form/basic-form.component.ts index 139ee7f..e0997cf 100644 --- a/apps/example/src/app/basic-form/basic-form.component.ts +++ b/apps/example/src/app/basic-form/basic-form.component.ts @@ -28,6 +28,7 @@ import { CustomErrorComponent } from '../custom-input-error.component';
+

States

(
   const disabledSignal = signal(false);
   const readOnlySignal = signal(false);
 
+  let previousValue: unknown|undefined = undefined;
   effect(
     () => {
-      if (valueSignal()) {
+      const newValue = valueSignal();
+      if (previousValue !== undefined && newValue !== previousValue) {
         dirtyStateSignal.set('DIRTY');
       }
+      previousValue = newValue;
     },
     {
       allowSignalWrites: true,