在我的应用程序中,我有两种形式。每个都根据选择的下拉值显示给用户。
<select (change)="change($event)">
<option value="0">New</option>
<option value="1">Existing</option>
</select>
然后在.ts文件中:
ngAfterViewInit() {
this.existingForm.valueChanges.subscribe(p => {
//code
});
this.newForm.valueChanges.subscribe(p => {
//code
});
}
change($event) {
if ($event.target.value == 0) {
//pause newForm subscription
//start existing subscription
}
if ($event.target.value == 1) {
//pause existing subscription
//start newform subscription
}
}
答案 0 :(得分:1)
调用subscribe()
到Observable
将启动subscribe
。
并按let subscription = this.existingForm.valueChanges.subscribe(...)
保留订阅,以便subscription.unsubscribe()
停止订阅。
保持观察力
让observable $ = this.existingForm.valueChanges;
启动或重启
让subscription = observable $ .subscribe();
停止
subscription.unsubscribe();