javascript - 多层面提高 AngularJS 性能

标签 javascript angularjs performance model-view-controller localization

我正在使用 AngularJS 编写一个复杂的多组件应用程序。目前,主要组件已准备就绪,我想提高应用程序的性能

经过短暂的实地调查后,我发现了一些非常有用的资源:

11 Tips to Improve AngularJS Performance

Improving AngularJS wep app performance example

AngularJS Performance in large applications

无论如何,我需要关于几个主题的一些额外建议:

<强>1。脚本和服务/工厂加载

  • 目前,所有脚本都在底部加载 <body></body>里面的标签index.html 。因此,当用户直接加载ui-route时或者我们只是重新加载给定页面,所有脚本都会再次加载。 我只想在使用给定脚本的状态下加载脚本。
  • 服务/工厂/等。以相同的方式加载。这会导致不需要给定的页面,例如由于数据负载大,加载它的服务会降低性能。 仅当当前状态需要它们时,我才需要初始化/加载它们。

<强>2。翻译/本地化

  • 我正在使用 Angular Translate - i18n Reference ,但是当我翻译页面元素时,我必须使用例如<button>{{btnName | translate}}</button 。这项技术和过滤器的整体使用被认为是最大的性能缺陷之一。该页面有很多元素,因此这确实可能会减慢加载速度。 有没有更好的解决方案或解决方法?

<强>3。总体

  • 我已阅读 ng-repeat 上的多个线程及其 track by功能,所以我认为它已完成,但我仍然不是 100% 确定理解 $digest ( $apply ) 正确循环。
  • 我读到一些评论说我们应该“避免将任何东西直接绑定(bind)到函数”,但我不太明白

欢迎任何有关 AngularJS 及其性能的其他评论或建议!

Thank you :)

最佳答案

阅读上面的内容,看起来您已经尝试过优化 AngularJS 本身。但是,没有提及构建过程的优化。我想您最好研究一下 Grunt 或 Gulp。使用这些工具,您可以将所有 JavaScript 连接并缩小为一个缩小的文件。这样,您在初始化站点时就只有一次性有效负载。

检查这个https://medium.com/@dickeyxxx/best-practices-for-building-angular-js-apps-266c1a4a6917

关于javascript - 多层面提高 AngularJS 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31537659/

相关文章:

添加日志输出后 Java 应用程序速度上升

javascript - 如何在 new Date() 之后使用从字符串转换而来的函数?

javascript - 防止加法输入

javascript - 为什么我的简单的 Angular 示例不能在 fiddle 上工作?

javascript - [google-drive-api]如何处理 google API 的 get() alt=media 响应

javascript - 转到页面并重新加载 Javascript/Angular

Javascript 表单验证多重使用占位符

javascript - 根据其位置更改导航栏颜色。颜色不变

performance - 为什么 32 字节的循环对齐会使代码更快?

c# - 多处理器和性能