2

複数のデータ項目を変更する簡単な方法を提供する目的で、複数のフォームを構築するために使用している Angular で再利用可能なコンポーネントを作成しました。

このコンポーネントには 2 つの入力フィールドがあり、*ngFor を使用して配列を反復処理するときに入力プロパティを介してバインドしています。すべてがうまく機能し、ID とデータの表示でうまく機能しますが、私が抱えている問題は、これら 2 つのフィールドの値を更新しようとすると、「未定義」として表示されることです (それらを変更しない限り)。

私のマークアップは次のとおりです。

<input 
      #catTitle
      matInput 
      placeholder="Document Title" 
      [value]="categoryTitle"
      formControlName="categoryTitle"
      [errorStateMatcher]="matcher"
      >

私のバックエンドは次のとおりです。

  categoryForm = new FormGroup({
    categoryTitle: new FormControl('', [Validators.minLength(3), Validators.maxLength(50)]),
    categoryDescription: new FormControl('', [Validators.minLength(5), Validators.maxLength(200)])
  })

私はこれで本当にばかげたことを見逃していると確信しています。

4

1 に答える 1

0

VI はすぐに、コードでフォーム コントロールのデフォルト値をここで空白に設定していることに気付きました。その後、categoryTitle: new FormControl('' そこで変数を取得するように変更し、ビューの初期化後にフォームを作成して「null」として設定されていないことを確認しました。

于 2018-11-01T12:15:41.350 に答える