簡體   English   中英

Angular 2使用模板引用變量ngForm作為輸入綁定

[英]Angular 2 using template reference variable ngForm as input binding

我正在構建一個輸入'有效'的組件。 如果我將值綁定到父組件的成員,事情就會很好。 但是,如果我將它綁定到模板引用,就像這樣

<step [valid]="name.valid">

      <input type="text" name="name"
             #name="ngForm"
             [(ngModel)]="name"
             required>

</step>

我明白了

檢查后表情發生了變化。 上一個值:'true'。 當前價值:'假'

我部分理解。 我得到組件初始化后發生ngForm有效檢查,因此值已更改。 我沒有得到的是為什么這是一個問題,為什么這可以通過調用enableProdMode()來解決,為什么enableProdMode()是一個壞主意。

我還嘗試使用.detach()和.reattach()的ChangeDetectorRef臨時禁用更改檢測,但這並沒有解決它,聽起來也是個壞主意。

有什么想法嗎?

這是一個眾所周知的問題。 請改用

<form #f="ngForm">
  <step [valid]="f.controls['name'].valid">

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM