EmberJS - 在模板中加载延迟

时间:2017-03-02 12:49:14

标签: ember.js ember-data

如何在模板内部延迟加载关系?

// models/folder.js
export default DS.Model.extend({
  children: DS.hasMany('item', { inverse: 'parent', async: true })
});

// models/item.js
export default DS.Model.extend({
  parent: DS.belongsTo('folder', { inverse: 'children', async: true })
});

此时加载了文件夹(except of his children)并且从未加载过子项。

当我在模板中运行{{folder.children}}时,我想让EmberJS加载文件夹的子项。

1 个答案:

答案 0 :(得分:0)

您可以将您的孩子的ui部分放在if帮助者中。如果情况属实,你的孩子会答应,满满的。

<button {{action (mut showChildren) true}}>Expand</button>

{{#if showChildren}}
  {{#each parent.children as |child|}}
    <span>{{child.name}}</span>
  {{/each}}
{{/if}}