angularjs优化方略

Posted chenby

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了angularjs优化方略相关的知识,希望对你有一定的参考价值。

angular优化方略,闲的没事想重构的人来瞅瞅。

1、减少$watch

减少$watch,减少$watch,减少$watch。不仅仅是$watch监听,还有ng-model,别闲的没事就加个ng-model。页面上不需要修改的东西bindOnce就好了。

2、保留dom

超出的DOM元素会隐藏而不是销毁,如果元素的数量过会儿有增加了,我们会重用这些缓存的元素。网上说的,看起来可行。不过一般没卵用。

3、延迟运行

$timeout,把需要运算或者不需要立即展示的东西扔到下一个事件循环里去。保证首屏加载

4、删除对隐藏dom的监视

网上的说法。我看来,在taps或者什么等等,需要点击显示的东西就不要给它加watch了,点击触发的时候再加。不过有点不好维护。

5、慎用filter

filter在$digest过程中,filter会执行很多次,至少两次。所以可以在controller里注入$filter服务,手动filter

6、慎用事件系统

事件系统也是很耗能,少用为妙。

 

仅仅就性能而谈,ng大多做后台管理类型的,ng-model还是很多的,可以尽量减少,他们对性能要求也不是很高,注重维护就可能减少一部分性能了,这也是ng被吐槽的一个点。总之放弃ng1,可以试试ng2。

性能据说提升了不少,ts式的强类型也提升性能。最后看了一下ng2的语法,webcomponents,很好维护。

个人还喜欢vue,性能没得说,可直接上移动端。写起来也很舒服。。。

以上是关于angularjs优化方略的主要内容,如果未能解决你的问题,请参考以下文章

基于AngularJS/Ionic框架开发的性能优化

ionic和angularjs的区别?

在 TypeScript 上优化 AngularJS 1.5.7 指令 - ...args 不起作用并且封装了 2 个类

基于angularJs的单页面应用seo优化及可抓取方案原理分析

九种提高AngularJS性能的方法

几种改善 AngularJS 性能的方法