Заполните реактивную форму исходными данными из сервиса - PullRequest
0 голосов
/ 18 мая 2019

Используя Angular 7 и Reactive формы, у меня есть следующее для компонента:

ngOnInit() {

  this.postForm = this.formBuilder.group({ 
    categoryId: [''],  
    title: [''],
    content: ['']
  });

}

getPost(postId: number) : Observable<Post> {

  return this.postService.getByPostId(postId);

}

Где метод GetByPostId PostService выглядит следующим образом:

public getByPostId(postId: number): Observable<Post> {

  return this.httpClient.get<Post>(`posts/${postId}`);

}

PostService возвращает один Post, интерфейс которогоis:

interface Post {
  id: number;
  categoryId: number;
  title: string;
  content: string;
}

Как правильно заполнить данные формы из того, что возвращает getPost?

1 Ответ

1 голос
/ 18 мая 2019

Лучший способ сделать это - использовать patchValue метод:

updateProfile() {
 this.profileForm.patchValue({
    firstName: 'Nancy',
    address: {
      street: '123 Drew Street'
    }
  });
}

Дополнительная информация: здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...