我有一个角2型预组件下面的代码:上FormControl的valueChanges事件运行方法
this.question["input"] = new FormControl();
this.question["input"].valueChanges
.debounceTime(400)
.switchMap(term => this.question['callback'](term))
.subscribe(
data => {
this.question["options"].length = 0;
this.question["options"].push(...data);
}
);
这是伟大的工作,但我试图加载动画添加到该事件,即一个动画从FormControl的值更改时开始,并在数据返回时结束。
这就是说有一种方法可以使用如下的代码来访问这个方法链?
...
.valueChanges
/* Start Animation or Run Custom Function Here */
.switchMap(term => /* Run AJAX Here */)
.subscribe(
data => {
/* End Animation Here */
}
);
...
任何协助表示赞赏。
谢谢你的意见,但这不是我正在寻找的。在你的代码中,'this.startAnimation();'只会在AJAX调用返回数据**后触发**,并且一旦代码在data => {...}块中运行。 –
如上所述,最好在always函数中使用'this.completeAnimation()''()=> {...}',这样动画就会结束,即使AJAX通话失败。 –
然后将开始动画移动到您拨打http呼叫的地方...... –