我正在尝试输出每个在HTML中都有描述的作业列表, 但添加data-ng-bind-html =“job.description”指令会使模板呈现速度非常慢 - 超过10秒。
作为JSON从服务器返回作业,例如
foreach ($jobs as $j) {
$data_arr[] = [
'ID' => $j->ID,
'title' => $j->post_title,
'description' => $j->post_content, // contains HTML
...
]}
// ... return json data
控制器看起来像这样
api.getJobs().success(function (data) {
$scope.jobs = data;
});
模板设置就像这样
<div data-ng-repeat="job in jobs">
<div>{{job.title}}</div>
<div data-ng-bind-html="job.description"></div>
</div>
如果我注释掉数据-ng-bind-html,模板会快速呈现。 我只渲染了25个工作,而HTML只是一些强大而且li标签不确定它为什么这么慢。
更新
似乎data-ng-bind-html是一个缓慢的操作,最后对我有用的是在用户采取某些操作后仅对每个作业html进行渲染。 在我的情况下,当包含作业的引导手风琴扩展时。
<div data-ng-if="status.open" data-ng-bind-html="job.description"></div>