我在尝试使用Angular 4实现微调器时遇到了问题。
我有一个运行复杂和长时间计算的复杂应用程序。在运行计算之前,我想显示一个微调器。为了做到这一点:
问题是旋转器不会显示。
在下面的例子中,我伪造了复杂的方法以便于理解。
https://stackblitz.com/edit/angular-eqo9cl
任何人都可以知道如何解决这个问题吗?
在启动计算之前,似乎无法刷新视图。我们还可以看到" val"在计算完成之前,视图中的变量不会更新。
感谢阅读:)
答案 0 :(得分:1)
要允许浏览器在计算开始之前更新视图,您可以使用setTimeout
异步运行它们。有关演示,请参阅this stackblitz。
doWork() {
this.spinner = true;
setTimeout(() => {
this.performCalculations();
this.spinner = false;
}, 50);
}