我有一些代码,结果取决于当前时间。说,
Shop.prototype.isOpen = function() {
var now = new Date();
var today = now.getDay();
return this.openTime(today) <= now && now <= this.closeTime(today);
};
然后在视图中,我们显示商店是否开放:
<span ng-show="shop.isOpen()">Open now!</span>
isOpen方法被调用一次,之后不会更新。
我有很多复杂的应用程序逻辑,它依赖于isOpen和类似的“时间限制”数据。
保持isOpen数据新鲜并使应用程序逻辑/视图与之保持同步的一般方法是什么?
我认为一个解决方案是拥有一个中间对象,其值会在频繁的时间间隔内更新,但我不确定这是否是正确的方法。
答案 0 :(得分:2)
指令的角度文档有一个时间更新的例子。
http://docs.angularjs.org/guide/directive
但基本上,让你的控制器设置$ scope(或$ rootScope,取决于你想如何访问它)属性,通过setTimeout循环更新。