Berikut ialah proses yang saya gunakan untuk melanggan dan mengemas kini borang reaktif berdasarkan data yang boleh diperhatikan.
Mungkin ada cara untuk menyelesaikan masalah tanpa melanggan yang boleh diperhatikan dan mengubah nilai.
@Component({ selector: 'app-my-component', template: ` <form [formGroup]="myForm"> <input formControlName="name" /> <input formControlName="email" /> </form> `, }) export class MyComponent implements OnInit { myForm: FormGroup; constructor(private fb: FormBuilder, private ds: DataService) {} ngOnInit() { this.myForm = this.fb.group({ name: '', email: '', }); ds.data$.subscribe((data) => { this.myForm.setValue({ name: data.name, email: data.email, }); }); } }
Lazimnya, satu cara untuk menghapuskan langganan adalah dengan menggunakan paip tak segerak dalam pembungkus
Borang itu sendiri boleh mengendalikan kemas kini pengguna di dalam NgOnInit atau NgOnChanges (jika berkemungkinan terdapat berbilang kemas kini dan menetapkan nilai borang adalah penting dalam kes ini)
Nota: Beberapa ciri Sudut yang sangat canggih digunakan dalam contoh ini. Anda boleh mengikut corak yang sama, tetapi anda tidak semestinya perlu menggunakan setiap ciri