我有ng-click="myFunc(aEntry)"
然后myFunc是这样的:
MODULE.myFunc = function(aEntry) {
aEntry.hilite = true;
if (!confirm('Are you sure?')) {
aEntry.hilite = false;
return;
}
};
然而,它不会更新dom以显示它突出显示。确认框似乎暂停了。有谁知道一项工作?
答案 0 :(得分:0)
这是因为confirm
是阻止功能。我知道你想要改变你,但是
aEntry.hilite = true;
不是UI更改。这是一个合乎逻辑的变化。您可能有一个事件处理程序,它在您调用confirm
后运行。您需要保证在调用confirm
之前执行突出显示ui操作。有几种方法可以做到。
最原始的方法是使用setTimeout
并使用时间将confirm
调用放入其中,这肯定比等待ui处理程序执行所需的时间长。
稍微好一点的方法是使用setInterval
直到ui发生变化。
但最好的方法是传递confirm
,其中包含function
用作ui更改的回调,或者在调用confirm
之前触发ui更改事件