Angularjs 为数字设置动画的最佳方式(性能方面)是什么?
在angular.js应用程序中,我使用以下指令:Angularjs 为数字设置动画的最佳方式(性能方面)是什么?,angularjs,animation,angularjs-directive,Angularjs,Animation,Angularjs Directive,在angular.js应用程序中,我使用以下指令: https://github.com/sparkalow/angular-count-to 在网上很有用 当我为phonegap编译它时,它真的很慢 但是,还有什么其他方法可以在两秒内将数字从0设置为200(例如),而不影响我的应用程序的性能呢?该指令使用$timeout,这是在Angular中获得设置超时功能的建议方法。它这样做可能出于以下原因之一,尽管还有其他原因: 易于为测试注入模拟 假设每个步骤都应允许其他组件进行更新 这是“有角度的
https://github.com/sparkalow/angular-count-to
在网上很有用
当我为phonegap编译它时,它真的很慢
但是,还有什么其他方法可以在两秒内将数字从0设置为200(例如),而不影响我的应用程序的性能呢?该指令使用
$timeout
,这是在Angular中获得设置超时
功能的建议方法。它这样做可能出于以下原因之一,尽管还有其他原因:
textContent
操作
无论如何,$timeout
执行setTimeout
以及$digest
(允许Angular更新其他组件)。额外的摘要周期可能是缓慢的部分,每个Angular开发人员都应该仔细阅读它们,因为它们是Angular设计的核心(提示:)。同样地,使用原始库,将$timeout
替换为setTimeout
调用(以及在if(step>=steps)
块中完成时的手动摘要触发器),应该可以加快它的速度
尽管-
$timeout
通常是正确的方法,但要小心这些更改。我会使用指令,避免任何导致摘要的方法,直接更新元素,而不是依赖摘要周期来更新计数器。您链接到的插件似乎每30毫秒产生一个摘要周期。奥多,你知道有什么指令不能像疯了一样消化吗?没有。但是,建造一个也不难。(我不会)