0
JavaScriptの値を変更した後、入力フィールドにRXjsのdistinceUntilChangedに問題があります。角2 |
再現手順:入力した結果として
セットテキスト削除ボタンの "" 入力内部
クリックは>>、空ではJavaScriptを使用して
- 入力内で再び "a"を設定する
- 削除ボタンをもう一度クリックします。入力は「a」の値のままです
「a」とは別の値を挿入すると機能します。 もちろん、observableからdistinceUntilChangedを削除しても、それもうまくいきます。
コードスニペット:
@Component({
selector: 'app',
template: `
<input #input [value]="value ? value : ''" (input)="filter$.next(input.value)">
{{val}}
<div>
<button (click)=remove()>Remove</button>
</div>
`
})
export class App {
filter$ = new Subject();
val:string;
value:string;
constructor() {
}
ngOnInit(): void {
this.filter$
.distinctUntilChanged()
.subscribe((value) => {
this.val = value;
this.value = value;
}));
}
remove(){
console.log('test');
this.value = "";
this.val = "";
}
}
私は私の問題でPlunker例を作成しました: