2016-04-13 57 views
3

我的示例表格(ControlGroup)包含2個綁定到2個輸入字段的控件。作爲一個ControlGroup有一個「感動」的屬性,我期望當它的至少一個子控件被「觸及」時,它將被設置爲true。 但事實並非如此。即使其中一個子控件已被觸摸,ControlGroup的「已觸摸」屬性仍然設置爲false。 對於屬性「有效」,而不是按預期工作。 我的期望錯了嗎?ControlGroup的「已觸及」屬性設置不正確

我使用2.0.0-beta.14

我的例子組件:

import {Component} from 'angular2/core'; 
import {ControlGroup, FormBuilder, Validators} from 'angular2/common'; 

@Component({ 
    selector: 'form-group-example', 
    template: ` 
     <h1>Angular 2 Control & Control Group example</h1> 
     <form [ngFormModel]="form" (ngSubmit)="onSubmit()"> 
      <label for="firstname">Vorname</label> 
      <input id="firstname" ngControl="firstname"/> 
      <label for="lastname">Nachname</label> 
      <input id="lastname" ngControl="lastname"/> 

      <button type="submit">Submit</button> 
     </form> 
    ` 
}) 
export class FormGroupExample { 
    form: ControlGroup; 

    constructor(fb: FormBuilder) { 
     this.form = fb.group(
      { 
       firstname: ['', Validators.maxLength(1)], 
       lastname: [''], 
      } 
     ); 
    } 

    onSubmit(): void { 
     console.log("form touched", this.form.touched); 
     console.log("form valid", this.form.valid); 
    } 
} 
+0

我在Plunker中經歷過同樣的事情,我加入http://stackoverflow.com/a/36591194/217408'pristine'也有效,但「接觸」不起作用。雖然https://plnkr.co/edit/mFlGI8?p=preview可以在控件上運行 –

回答

0

某處,我讀了感動設置在onblur事件。也許在形式上沒有任何障礙。