我正在编写一个具有以下结构的网页:
>一节(表A)取决于另一节(表B);
>另一部分(表B)包含需要在每次更新时重新计算的元素.计算由外部工具处理,并在完成时导致事件.
为了保证正确性,只有在另一个表完全更新(即完成计算)之后才需要更新表.但是,我不知道如何有效地实现这一点,我在JavaScript中找不到任何等待工具.
目前,我使用以下方法:
>声明更新的全局变量并将其设为false;
>在第一个表收到输入后,我做一个空的while循环,直到更新为真;
>添加一个监听器,一旦完成计算并收到事件,将更新设置为true.
这对我来说似乎不直观,但我想不出任何其他方式.有没有什么好方法可以做到这一点?
感谢您的任何投入!
解决方法
Add an listener,once the calculation is done and the event received,set updated to true.
而不是将更新设置为true,然后等待更新为真 – 只需在侦听器中执行您想要执行的操作.
myEventBus.addListener(function () { // do whatever updateTable(); alert('table updated!'); });