优化EmberJS中动态列的冗余处理

时间:2016-05-23 06:38:19

标签: ember.js

目前,我正在构建一个动态表,其中行和列值都是在运行时确定的。我通过以下代码实现了这一点。

{{#each item in collection}}
<tr>
   {{#each field in fields}} // redundant for all collections
   <td>
     {{sample-td field=field data=item}}
   </td>
   {{/each}}
</tr>
{{/each}}

现在,这很好用但是对于大型数据集,渲染看起来太慢了。在分析代码时,似乎第二个循环在第一个循环中进行冗余处理(这些字段只需要计算一次,但是它会在集合的每个值上计算它)。

请建议我如何优化我的代码。

1 个答案:

答案 0 :(得分:1)

您可以指定键值以提高连续渲染中的渲染速度。 关注Ember guide link

{{#each model key="id" as |item|}}
{{/each}}