【问题标题】:Angular2 FormBuilder default values no longer available when using ngModelAngular2 FormBuilder 默认值在使用 ngModel 时不再可用
【发布时间】:2016-06-23 13:06:39
【问题描述】:

我注意到在使用[(ngModel)] 时,我不再能够利用FormBuilder 提供的默认 值。

目前我的表单中有以下内容

<form (ngSubmit)="submitFees()" [ngFormModel]="FeeForm">
    <div class="form-group row">
      <div class="col-sm-12">
        <input type="number" id="Fees" class="form-control"
        placeholder="Fee" required
       [ngFormControl]="FeeForm.controls['ContentFee']"
        [(ngModel)]="Fee">
      </div>
     Fee: {{postFee*1.2| number:'1.2-2'}}
  </div>
</form>

在我的构造函数中:

constructor(){
    let fb = new FormBuilder();
    this.FeeForm = fb.group({
        ContentFee: ['0', Validators.required]
    });
}

这给了我一个NaN 代表{{postFee}} 当我提交表格和console.log(FeeForm.value) 时,我得到ContentFee:undefined。但是,如果我删除 [(ngModel)] 一切都会按预期工作。

[(ngModel)] 如何仍能使用 默认 值?

【问题讨论】:

    标签: angular angular2-forms


    【解决方案1】:

    From my other question 似乎需要在构造函数中包含初始化,如下所示:

    constructor(){
        this.Fee = 0 // This will show up as the default value 
        let fb = new FormBuilder();
        this.FeeForm = fb.group({
            ContentFee: ['0', Validators.required] // Value not used
        });
    }
    

    【讨论】:

      猜你喜欢
      • 2012-05-01
      • 2016-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-18
      • 1970-01-01
      • 2018-08-20
      相关资源
      最近更新 更多