Javascript angular.js-解析html函数需要2000毫秒甚至更多时间

Javascript angular.js-解析html函数需要2000毫秒甚至更多时间,javascript,angularjs,angular-material,Javascript,Angularjs,Angular Material,我正在努力加速我的网站。这是我在chrome的开发者工具Timeline/Profile JS中发现的。在中包含了150个蓝色解析HTML(在屏幕中) 这是加载时间的50%。我用平板电脑测试了它,这个功能甚至需要15000毫秒!我将路由提供程序设置为: var start = '<div class="important">'; var end = '</div>'; $routeProvider.when('/test', { template: start +

我正在努力加速我的网站。这是我在chrome的开发者工具Timeline/Profile JS中发现的。在中包含了150个蓝色解析HTML(在屏幕中)

这是加载时间的50%。我用平板电脑测试了它,这个功能甚至需要15000毫秒!我将路由提供程序设置为:

var start = '<div class="important">';
var end = '</div>';
$routeProvider.when('/test', {
   template: start + 'some short text' + end
});
var start='';
var-end='';
$routeProvider.when(“/test”{
模板:开始+一些短文本+结束
});
怎么了?网站的完整大小为500kb。它有97个示波器

编辑:如果我在平板电脑上不使用angular测试网站,加载时间为2.5秒(正如我在上面使用angular时指出的,加载时间超过18秒)。我愿意为解决方案付费

我还补充说我调试过(在平板电脑上)。你可以在Chrome上查看时间线。打开开发者控制台(F12)。单击选项卡时间线。右键单击此选项卡,然后选择“加载时间线数据”


编辑2:我正在使用,我认为这可能是问题所在,这可能是所有解析html的原因,因为例如有很多按钮。

您没有发布代码,但下面是慢速生成器:

  • 回流、重绘、解析HTML过多
  • 慢脏检查
  • 太多的DOM操作
简言之,解决方案如下:

  • 将指令与内联模板一起使用
  • 使用$templateCache
  • 重用内存而不是分配新内存
  • 少用手表
  • 延迟元素创建
  • 防止大型和复杂的ng重复(例如应用分页)
  • 防止来自一个页面的多个(初始)请求
哪里出了问题

使用Chrome开发者栏以外的工具作为Batarang调试和评测angularjs应用程序。下载地址:

请在此处阅读更多信息:


请注意,parseHTML调用是Angular生命周期的一部分。您多久使用一次ng repeat?只有一次ng repeat,在我参加测试时它是空的(0项)(通常大约有5项)@dontHaveName我认为除非有人遇到过同样的问题,否则在没有看到实际代码的情况下很难帮助您。@dontHaveName我在我的一个项目中遇到了一些angularJS性能问题。我们需要访问应用程序,或者至少查看代码,以了解正在发生的事情。当单个视图中有10000多个绑定时,就会发生这种情况。(由于在我们的例子中错误使用了自定义指令)站点有97个作用域,所以可以有更多的绑定,对吗?我编辑了我的问题,我想这可能是角材料的问题。因为每次我做类似文本的事情时,可能都是1解析html