私は現在、検索が行われている間、検索バーに単純なローダーを表示しようとしています。私は、valueChanges
の私のフォームコントロールから "ローディング"値に観測可能なサブスクライブコールバックの変数を設定し、完全なコールバックの空の文字列に設定する予定です。ただし、完全なコールバックは決して呼び出されません。Angular2フォームコントロールvalueChanges observable completeはまだ呼び出されていません
また、コールバックを最後にobservableに追加しようとしましたが、コールされることもありません。
マイコード:
searchBox: Control = new Control();
loadingClass: string = "";
constructor() {
this.searchBox.valueChanges
.debounceTime(400)
.distinctUntilChanged()
.subscribe((text: string) => {
this.imageSearch = text;
this.loadingClass = "loading";
}, (err: Error) => {
console.log(err);
},() => {
this.loadingClass = "";
console.log("test");
});
}
私のhtmlテンプレートでは、実際にはthis.imageSearch属性に依存するパイプがあるので、サブスクライブ部分に設定します。私はそれを使用することができるようにあなたの例に行われる調整がありますか? – Matsura
バリデーションが成功した場合にのみ変更を取得する方法や、valueChangesで検証をチェックする方法はありますか? –