diff --git a/packages/cdk/forms/src/models/abstractControl.ts b/packages/cdk/forms/src/models/abstractControl.ts index 1b7b8f35a..9b52c5a56 100644 --- a/packages/cdk/forms/src/models/abstractControl.ts +++ b/packages/cdk/forms/src/models/abstractControl.ts @@ -684,7 +684,7 @@ export abstract class AbstractControl { } if (this.trigger === 'interactions') { - if ((!this.valid.value || !!oldValue) && !isChanging) { + if (((this.validated.value && !this.valid.value) || !!oldValue) && !isChanging) { isChangeValidating = true } @@ -693,7 +693,9 @@ export abstract class AbstractControl { } } - isChanging = true + if (this.dirty.value) { + isChanging = true + } }) } } diff --git a/packages/components/form/demo/InteractionsTrigger.vue b/packages/components/form/demo/InteractionsTrigger.vue index 912338a0c..73a5c3ce3 100644 --- a/packages/components/form/demo/InteractionsTrigger.vue +++ b/packages/components/form/demo/InteractionsTrigger.vue @@ -1,9 +1,9 @@