我们正在开发带有角度js的单页web应用程序。我们的问题是当我们浏览不同的URL时,越来越多的java脚本被添加到浏览器内存中,因此使应用程序逐渐变慢。是否有任何方法在应用程序的规模增加时提高此类单页应用程序的性能?单页应用程序性能问题
1
A
回答
0
您应该包括所有的JavaScript文件合并成一个文件,以减少网络I/O。有工具可以做到这一点,只是谷歌“JavaScript concat”。
你可以再走一步,缩小/丑化你的JavaScript。
将您的JavaScript文件添加到主要的index.html文件。您不应该在您的意见中重新加载它。
如果您仍然遇到性能问题,那么手头上存在更大的问题。
0
检查内存泄漏:
- 删除$ rootScope听众,$超时,$区间,对指令或控制器摧毁$手表。
- 删除指令destroy上的事件侦听器。
如果真的很慢,请尝试使用较少的手表,使用一次性绑定,使用ng-repeat进行追踪。但是,如果你有内存问题,你将不得不跟踪增加它的内容。
如果你想轻松的性能提升,不要忘了在你的应用程序配置添加此,当你在生产去:
$compileProvider.debugInfoEnabled(false);
1
最好的办法是,只有当你需要的是加载您的js文件。延迟加载是该方法。最初只加载主js文件和,然后再转到另一个url
,lazy load
所需的js文件。
oc.lazyLoad
是您的问题的一个很好的解决方案。
下载oc.lazyLoad
并注入是依赖于你的应用程式,例如
var myApp = angular.module("MyApp", ["oc.lazyLoad"]);
,你有一个名为testModule.js
一个js文件,你知道哪里是使用该文件。所以前转到该URL,加载JS文件一样
myApp.controller("MyCtrl", function($ocLazyLoad) {
$ocLazyLoad.load('testModule.js');
});
更加清晰和信息Read here
相关问题
- 1. 应用程序性能问题:SqlServer&Oracle
- 2. javafx应用程序的性能问题
- 3. SVG中的Web应用程序,性能问题和可行性
- 4. 可能的Web应用程序数据库性能问题
- 5. Android性能问题:许多小应用程序或一个大应用程序?
- 6. Android的MapView导航应用程序的性能问题 - 应用程序
- 7. HttpWebRequest.GetResponse在多线程应用程序中的性能问题
- 8. 完整性问题持续应用程序应用程序
- 9. Sharepoint 2010应用程序页面问题
- 10. iPhone应用程序兼容性问题
- 11. 应用性能问题Asp.net
- 12. 从Python应用程序中使用Tesseract OCR的性能问题
- 13. Enterprise Web应用程序中JSP页面加载的性能问题
- 14. 单页应用程序(ARIA等)的可访问性
- 15. WPF应用程序,NotifyIcon问题(表单)
- 16. GAE简单的应用程序问题
- 17. Windows 2003上的.NET应用程序性能问题
- 18. 多核应用程序中的性能增益问题
- 19. Web应用程序的性能问题Anjular js
- 20. SQL Server应用程序角色,性能问题
- 21. Flash中存在大图像性能问题(AIR应用程序)
- 22. Ionic 2的性能问题应用程序
- 23. 如何找到在C#应用程序性能问题
- 24. 游戏应用程序中的性能问题
- 25. 从ASP.Net运行SQL脚本C#应用程序性能问题
- 26. 移动web应用程序性能问题
- 27. POI和FileOutputPutStream的Swing应用程序性能问题
- 28. ASP。 NET C#的Web应用程序性能问题
- 29. 黑莓应用程序中的图像的性能问题
- 30. Java应用程序性能问题在手
尝试使用Angular的ui路由器进行路由。 –
你可以捆绑JavaScript。它实际上每次都会减少http调用。请参阅[链接](http://stackoverflow.com/questions/12804955/what-is-the-benefit-of-asp-net-bundling-and-minification-in-runtime) – tamil