データを取得する次のサービスがあります。私は期待バックエンドからフォームの値を初期化する
export class UserService {
user: User
private userSource = new Subject<User>();
currentUser = this.userSource.asObservable();
constructor(http: Http){}
resolve(route: ActivatedRouteSnapshot){
return this.http.get('/getUserData')
.map(output => {
console.log("IN RESOLVE. OUTPUT = ");
console.log(output as User); // Getting output here as expected
return output as User;
})
}}
ユーザーモデル
export clsss User {
constructor(public Basic: {mob: string; email: string},
public other: {abc: string; xyz: string }) {}
BasicComponent.ts
export class BasicComponent implements OnInit {
basicForm: FormGroup;
user: User;
constructor(private fb: FormBuilder, public userService: UserService) { }
ngOnInit() {
this.userService.currentUser.subscribe(
result => {
console.log(result)
this.user = result
})
this basicForm = this.fb.group({
mob: [this.user.mob, Validators.compose([Validators.required, Validators.minLength(10)],
email: ['', Validators.compose([Validators.required, EmailValidator.isValidMailFormat])]
})
}}
私はこれらの値が事前に入力することにしたいなどのデータを取得しています。しかし、user
オブジェクトはundefined
です。 これは最小限のコードです。私はBasicComponent
のような他のコンポーネントを持っていて、それらのそれぞれはforms
を持っています。私はすべての依存関係&他の宣言を含めました。私はユーザーオブジェクトを取得していない以外は正常に動作していますFormbuilder
私が紛失しているものは何ですか?
差があるしてみてください? –
がエラー - > 'formgroupが定義されていません 'のために変更されました – anshuVersatile
エラー:_formGroupはFormGroupインスタンスを予期します。 in_ –