2016-02-19 60 views
3

提交表單後,輸入的pristine狀態仍爲「false」。我不知道如何重置pristine狀態爲真。在Angular 1中,我將使用$setPristine函數。

回答

1

我看了一下API和開發人員指南。沒有API將輸入重置爲原始。

而是developer guide on forms(「添加英雄並重置表單」部分)顯示了一種機制,通過在組件上添加活動標誌將表單重置爲pristine。然後用ngIf

結合它的形式標記
active = true; 

    newHero() { 
    this.model = new Hero(42, '', ''); 
    this.active = false; 
    setTimeout(()=> this.active=true, 0); 
    } 

<form *ngIf="active">

這種再生的形式,並設置其控制回原始的。

+0

我試過這個方法但是整個網頁會在「active」被設置爲true後刷新。頁面刷新後數據消失。 – Bowen

+1

而且開發者指南還提到,添加活動僅僅是一種臨時的方式。 – Bowen

相關問題