1

AngularJS 有一个 $timeout 服务,它作为 setTimeout 的便捷包装器。

为什么 setInterval 没有等价物?

4

1 回答 1

2

由于 $timeout 是scope.apply每次调用后的调用,它可能会变得昂贵。然而,创建一个简单的间隔,您可以决定需要哪些监视和应用调用来保持它的清洁。

例如,如果您间隔每分钟运行一次以检查用户的值是否已更改,并且如果自上次检查后值已更改,则可选择保存它。根据您编写代码的方式,您可能永远不需要更新网页,因此您interval可以在不触发更新的情况下进行操作。

这并不能直接回答为什么 $interval 默认情况下不提供的问题,但我怀疑这是因为根据您的特定要求创建自己的很简单,最好将其打开以供您增强,而不是提供太复杂或太不灵活的默认实现。

于 2013-08-20T03:32:09.913 回答