Angularjs 确认框正在阻塞/暂停
我有一个Angularjs 确认框正在阻塞/暂停,angularjs,Angularjs,我有一个ng click=“myFunc(aEntry)” 然后myFunc是这样的: MODULE.myFunc = function(aEntry) { aEntry.hilite = true; if (!confirm('Are you sure?')) { aEntry.hilite = false; return; } }; 但是,它不会更新dom以突出显示它。确认框似乎
ng click=“myFunc(aEntry)”
然后myFunc是这样的:
MODULE.myFunc = function(aEntry) {
aEntry.hilite = true;
if (!confirm('Are you sure?')) {
aEntry.hilite = false;
return;
}
};
但是,它不会更新dom以突出显示它。确认框似乎正在暂停它。有人知道变通方法吗?这是因为
确认
是一种阻塞功能。我知道您想更改ui,但是
aEntry.hilite = true;
这不是UI更改。这是合乎逻辑的变化。您可能有一个事件处理程序,它在您调用confirm
后运行。您需要确保在调用确认之前执行突出显示ui操作。有几种方法可以做到这一点
最原始的方法是使用setTimeout
并将confirm
调用放入其中,使用的时间肯定比等待ui处理程序执行所需的时间长
更好的方法是使用setInterval
,直到发生ui更改
但最好的方法是传递confirm
,并在其周围使用函数
作为ui更改的回调,或者在调用confirm
之前触发ui更改事件,因为confirm
是一个阻塞函数。我知道您想更改ui,但是
aEntry.hilite = true;
这不是UI更改。这是合乎逻辑的变化。您可能有一个事件处理程序,它在您调用confirm
后运行。您需要确保在调用确认之前执行突出显示ui操作。有几种方法可以做到这一点
最原始的方法是使用setTimeout
并将confirm
调用放入其中,使用的时间肯定比等待ui处理程序执行所需的时间长
更好的方法是使用setInterval
,直到发生ui更改
但是最好的方法是在调用confirm之前传递confirm
,并在其周围包装一个函数
,作为ui更改的回调,或者触发ui更改事件。您可以再详细说明一点或创建一个小提琴吗?您可以再详细说明一点或创建一个小提琴吗?