0
angular2では、私の入力に新しいデータをロードしようとしています。私はHTMLをきれいに保ち、コンポーネントtsファイルにさらに多くの検証ロジックを持たせるためにformgroupを使用しています。フォーム要素をレンダリングする私のコードは以下の通りです: -サービスから約束してフォームグループの値を読み込むときにmd-inputプレースホルダーが消えない
constructor(private _fb: FormBuilder, private userService: UsersService,
private router: Router, private accountRoutes: AccountRoutes) {
this.myForm =
this.myForm = this._fb.group({
user: this._fb.group({
"EmailAddress": [null, Validators.compose([
Validators.required
])]
})
});
}
ngOnInit() {
this.userService.GetUser().subscribe(
(response) => {
this.user = {
EmailAddress: "[email protected]",//response.EmailAddress,
FirstName: response.FirstName,
MiddleName: response.MiddleName,
Surname: response.Surname,
Password: "",
ConfirmPassword: ""
};
this.myForm.controls["user"].setValue(this.user, { onlySelf: true });
});
}); }
とHTMLコードは以下の通りです:
<md-card-content fxLayout="column" formGroupName="user">
<md-input-container>
<input md-input placeholder="Email" formControlName="EmailAddress"
type="email" name="EmailAddress" />
</md-input-container>
</md-card-content>
問題の詳細については、以下の画像をご覧ください。画像でわかるように、バックエンドからデータをロードしたときにプレースホルダがバックグラウンドに残っています しかし、バックエンドAPIからフォーム要素のデータを読み込んでも、プレースホルダは上がっていません。
は、私はそれがMD-入力に加算取得されますが、削除されません取得MD-空のクラスで犯人を見つけました。 " "なぜこれがmd-inputから削除されていないのかわかりません –