Javascript Ember.js:如何表示一个具有多个模型的关系?
我正试图建立一个余烬应用程序,我有很多项目,所有这些都有很多选择。然后,我需要一个“仪表板”区域,在那里我可以监控所有项目/选项的信息 在中,我得到了一个仪表板的工作示例,它监视单个项目集合。Javascript Ember.js:如何表示一个具有多个模型的关系?,javascript,ember.js,relationship,Javascript,Ember.js,Relationship,我正试图建立一个余烬应用程序,我有很多项目,所有这些都有很多选择。然后,我需要一个“仪表板”区域,在那里我可以监控所有项目/选项的信息 在中,我得到了一个仪表板的工作示例,它监视单个项目集合。 如何更新此项以表示每个项目的子选项? Javascript- 把手 <script type="text/x-handlebars" data-template-name="application"> <p><strong>Ember.js example<
如何更新此项以表示每个项目的子选项? Javascript- 把手
<script type="text/x-handlebars" data-template-name="application">
<p><strong>Ember.js example</strong><br>Using an a dashboard that monitors 'items'.</p>
{{render dashboard}}
{{outlet}}
</script>
<script type="text/x-handlebars" data-template-name="items">
<h2>Items:</h2>
<dl>
{{#each}}
<dt>Title: {{title}}</dt>
<dd>Cost: {{cost}} {{input value=cost}}</dd>
{{/each}}
</dl>
</script>
<script type="text/x-handlebars" data-template-name="dashboard">
<h2>Overview:</h2>
{{#if controllers.items}}
<p>Total number of items (expect 3): {{itemsLength}}<br>
Total cost of items (expect 600): {{itemsTotalCost}}</p>
{{/if}}
</script>
Ember.js示例
使用监控“项目”的仪表板
{{render dashboard}}
{{outlet}}
项目:
{{{#各}
标题:{{Title}}
成本:{{Cost}}{{input value=Cost}}
{{/每个}}
概述:
{{{#if controllers.items}
项目总数(除3项外):{{itemsLength}}
项目总成本(预计600):{{itemsTotalCost}
{{/if}
首先,我建议使用客户端记录管理框架,如ember data/ember模型,它们有点像学习曲线,但从长远来看非常棒。如果您不想这样做,您可以遵循创建模型时已经建立的相同模式
我无法让仪表板以与监视项目相同的方式监视选项。它看起来像控制器。选项不存在-为什么会存在?因为您从未创建过使用选项控制器的任何东西。你想在仪表板上完成什么?所有项目中所有选项的计数?从items控制器中获取项目,并对其进行迭代,计算选项。仪表板将需要来自items&options的所有数据,以便可以进行各种计算。重要的是,它还需要在某些项目/选项属性更改时更新。我认为通过项目访问选项不允许仪表板观察选项更改。这是真的吗?当然,只需在监视选项的项级别和监视项的项控制器级别添加一个computed属性,如果不定义项控制器,它只会迭代模型中的项(它从控制器向下代理)
<script type="text/x-handlebars" data-template-name="application">
<p><strong>Ember.js example</strong><br>Using an a dashboard that monitors 'items'.</p>
{{render dashboard}}
{{outlet}}
</script>
<script type="text/x-handlebars" data-template-name="items">
<h2>Items:</h2>
<dl>
{{#each}}
<dt>Title: {{title}}</dt>
<dd>Cost: {{cost}} {{input value=cost}}</dd>
{{/each}}
</dl>
</script>
<script type="text/x-handlebars" data-template-name="dashboard">
<h2>Overview:</h2>
{{#if controllers.items}}
<p>Total number of items (expect 3): {{itemsLength}}<br>
Total cost of items (expect 600): {{itemsTotalCost}}</p>
{{/if}}
</script>