javascript - 下一行应该只在上面的行完全执行时才执行 请记住在 html 中调用了该函数
问题描述
我的.component.html
<button (click)="refresh()">Refresh</button>
我的.component.ts
refresh() {
let self = this;
self.isRefresh = true; //1 ST TYM
self.getfun();
self.isRefresh = false; //2ND TYM
}
我要那个:
当 self.getfun(); 这个函数被完全执行然后只执行 self.isRefresh = false; //第二个TYM
请告诉我最好的专业方式!
我不希望在 getfun() 中进行更改,因为我正在处理 angular 它是异步的
解决方案
如果您使用Observables
,请检查以下代码段
getFun(){
return new Observable((observer)=> {
//getFun method code goes here
observer.complete()
})
}
refresh() {
let self = this;
self.isRefresh = true; //1 ST TYM
this.getFun().subscribe({ complete: () => {
self.isRefresh = false; //2ND TYM
}});
}
推荐阅读
- c++ - Gtest C++ - 我们可以模拟我们正在测试的同一类的非虚函数吗
- javascript - 我想看看访问者在我的页面上停留了多长时间
- html - 如何在 HTML/CSS 的平铺列表中以 16:9 的比例获取所有孩子
- flutter - Flutter build_runner watch 不工作 | 在 null 上调用了 getter 'definingUnit'
- c# - 如何在 Bot Framework V4 中对提示验证器进行单元测试
- javascript - 如何将 pdf 中的 php 页面输出保存为图像
- python-3.x - 通过 python Calendar API 添加与会者时超出日历使用限制
- django - 在 DigitalOcean 上设置域到 Django 和 Nginx
- reactjs - 如何在 React native 的数组中连接字符串响应?
- php - 不能将字符串偏移量用作数组 wordpress 错误