angular.js - 解析 html 函数需要 2000 毫秒甚至更多
angular.js - parse html function is taking 2000ms and much more
我正在尝试加速我的网站。这是我在 chrome 的 Timeline/Profile JS 开发者工具中找到的。在包含 150 个蓝色 Parse HTML(在屏幕中)。
这是加载时间的 50%。我使用平板电脑对其进行了测试,该功能甚至花费了 15000 毫秒!我正在这样设置路由提供商:
var start = '<div class="important">';
var end = '</div>';
$routeProvider.when('/test', {
template: start + 'some short text' + end
});
怎么了?网站的完整大小为 500kb。它有 97 个范围。
编辑:如果我在平板电脑上不使用 angular 测试网站,加载时间为 2.5 秒(正如我在上面用 angular 指出的那样超过 18 秒)。我愿意为解决方案付费。
我还添加了我调试(在平板电脑上)的 timeline data。您可以在 Chrome 上查看时间表。打开开发者控制台(F12)。单击选项卡时间线。右键单击此选项卡,然后选择加载时间线数据。
编辑 2:我正在使用 angular-material,我认为这可能是问题所在,这可能是所有解析 html 的原因,因为例如有很多按钮。
你没有post你的代码,但是下面是缓慢的制造者:
- 回流、重绘、解析 HTML 过多
- 脏检查速度慢
- 太多 DOM 操作
简而言之,解决方案如下:
- 将指令与内联模板一起使用
- 使用 $templateCache
- 重用内存而不是分配新内存
- 少用手表
- 推迟元素创建
- 防止大而复杂的 ng 重复(例如应用分页)
- 防止来自一个页面的多个(初始)请求
哪里错了?
使用除 Chrome 开发人员栏之外的工具 Batarang 来调试和分析您的 angularjs 应用。从以下网址下载:
https://chrome.google.com/webstore/detail/angularjs-batarang/ighdmehidhipcmcojjgiloacoafjmpfk
在此处阅读更多内容:
我正在尝试加速我的网站。这是我在 chrome 的 Timeline/Profile JS 开发者工具中找到的。在包含 150 个蓝色 Parse HTML(在屏幕中)。
这是加载时间的 50%。我使用平板电脑对其进行了测试,该功能甚至花费了 15000 毫秒!我正在这样设置路由提供商:
var start = '<div class="important">';
var end = '</div>';
$routeProvider.when('/test', {
template: start + 'some short text' + end
});
怎么了?网站的完整大小为 500kb。它有 97 个范围。
编辑:如果我在平板电脑上不使用 angular 测试网站,加载时间为 2.5 秒(正如我在上面用 angular 指出的那样超过 18 秒)。我愿意为解决方案付费。
我还添加了我调试(在平板电脑上)的 timeline data。您可以在 Chrome 上查看时间表。打开开发者控制台(F12)。单击选项卡时间线。右键单击此选项卡,然后选择加载时间线数据。
编辑 2:我正在使用 angular-material,我认为这可能是问题所在,这可能是所有解析 html 的原因,因为例如有很多按钮。
你没有post你的代码,但是下面是缓慢的制造者:
- 回流、重绘、解析 HTML 过多
- 脏检查速度慢
- 太多 DOM 操作
简而言之,解决方案如下:
- 将指令与内联模板一起使用
- 使用 $templateCache
- 重用内存而不是分配新内存
- 少用手表
- 推迟元素创建
- 防止大而复杂的 ng 重复(例如应用分页)
- 防止来自一个页面的多个(初始)请求
哪里错了?
使用除 Chrome 开发人员栏之外的工具 Batarang 来调试和分析您的 angularjs 应用。从以下网址下载: https://chrome.google.com/webstore/detail/angularjs-batarang/ighdmehidhipcmcojjgiloacoafjmpfk
在此处阅读更多内容: