2017-11-03 12 views
2

私はいつも私のページに新しい入力を作成するときに私はこのエラーがあります、私はそれを解決せずにそれに多くの時間を失うとわからない。誰でも助けることができますか?nullのプロパティ 'touched'を読み取ることができません角度2

ngOnInit(): void { 
this.customerForm = this.formBuilder.group({ 
    firstName: ['', [Validators.required, Validators.minLength(3)]], 
    lastName: ['', [Validators.required, Validators.maxLength(50)]], 
    phone: '', 
    rating: '', 
    notification: 'email', 
    sendCatalog: true 
    }); 
} 

私も「安全なナビゲーション演算子を使用しようとしました:私はすでにFormBuilderの私の '評価' を作成した

<div class="form-group" 
     [ngClass]="{'has-error': (customerForm.get('rating').touched || 
            customerForm.get('rating').dirty) && 
            !customerForm.get('rating').valid }"> 
    <label class="col-md-2 control-label" 
      for="ratingId">Rating</label> 

    <div class="col-md-8"> 
     <input class="form-control" 
        id="ratingId" 
        type="number" 
        formControlName = "rating" /> 
     <span class="help-block" *ngIf="(customerForm.get('rating').touched 
              || customerForm.get('rating').dirty) && 
              customerForm.get('rating').errors"> 
      <span *ngIf="customerForm.get('rating').errors.range"> 
       Please rate your experience from 1 to 5. 
      </span> 
     </span> 
    </div> 
</div> 
    1. 私のHTMLをフォロー"は、HTMLで( '評価')名前を呼んでいるすべての場所で、しかし試してみるとそれは、コンソールに次のエラーを返します: は、名前のコントロールを見つけることができません:「評価」

      • この制御は、すでに私のFormBuilderにし、HTML(formControlName)で定義されていることに留意します。
  • +0

    私はこれをplunkrで再作成しましたが、動作するように思われます(メッセージを見るために、評価用の最小/最大バリデーターが追加されています):https://plnkr.co/edit/1qetXQpikfAaT6ZVWFti?p=preview – Kevin

    +0

    こんにちはKevin、私は書いたコードとまったく同じコードで新しいソリューションを作成しようとしましたが、正しく機能しました。 –

    +0

    あなたは

    を忘れました....
    Eliseo

    答えて

    0

    私が書いたコードとまったく同じコードで新しいソリューションを作成しようとしましたが、正しく機能しました。ちょっと厄介なこと、私は古いプロジェクトに何かバグがあるはずです。

    関連する問題