2017-08-21 9 views
0

クラスの空のインスタンスに値を追加する最先端のソリューションは何ですか?たとえば、私はユーザークラスを持っており、新しいユーザーを作成したいと考えています。私のコンポーネントでは、空のユーザーオブジェクト "user:User;"をインスタンス化しています。プロパティはコンストラクタで設定され、いくつかのパラメータはオプションです。入力フォームをngModelで空の/未定義のクラスインスタンスにバインドしたい場合、これは(もちろん)動作しません。私は自分のコンポーネントにデフォルト値を設定することができますが、それは完璧な解決策ではないようです。空のオブジェクトでngModelを使用

答えて

0

あなたの反応形式を設定し、それらを空白文字列として設定し、オプションのフィールドにも同様に設定します。

あなたがそれがオプションであると言わない限り、角度はボットが理解できるので、理解できます。そして今、私は角で、オプションのマーキングのどこかがある事をいけない...

public username: AbstractControl; 
public password: AbstractControl; 
this.userForm = new FormGroup({ 
    username: new FormControl('', [Validators.required]), 
    password: new FormControl('', [Validators.required]) 
}); 

とあなただけの

<div>{{username.value || ''}}</div> 
結合値を表示したい場合は、あなたのビューは
<input type="text" name="username" formControlName="username" 
         class="form-control form-control-danger" id="username" 
         placeholder="Username" required 
         autofocus> 

次のようになります。

バインディング値が未定義の場合、空の文字列に設定せずにエラーが発生します。