将多个值从 `model` 发送到 `template.hbs` - ember 方式
Sending Multiple values from `model` to `template.hbs` - the ember way
我正在寻找正确的 ember
推荐方法,以便在发送到模板之前对数据值进行分组。
因为我有 2 个不同数组中的数据。
我不想在整个应用程序中保留 no.of 个迭代器。所以我想在新 creating/created 数组或 ember 推荐的正确方法中对数据进行分组。有人帮帮我吗?
我的模型:(样本)
import Ember from 'ember';
export default Ember.Route.extend({
model(){
return {
"data" : {
"group" : [{"group":"newGroup"}, {"group":"oldGroup"}],
"details" : [{"name":"arif","age":"3"}, {"name":"afi","age":"2"}]
}
}
}
});
我的 hbs : /{{data.data.group}} - 如何显示这个?按相等的数组值?/
{{#each model.data.details as |data| }}
<li>{{data.data.group}} {{data.name}} -- {{data.age}} </li>
{{/each}}
</ul>
我理解的对吗,你是想把对应的group显示到details数据集中?如果是这样,您想要显示组的方式不起作用,因为您现在尝试访问时没有 model.data.details.data.group
。请记住,每个循环中的数据是 "reference" 到 model.data.details
我强烈建议您重组数据集,以便在组和详细信息之间建立联系。现在,我可以判断是否有一个......
将其视为一种新的数据结构:
{
data: {
groups: {
newGroup: {
name: "arif",
age: 3
},
oldGroup: {
name: "afi",
age: 2
}
}
}
}
然后你可以像这样迭代这个结构
{{#each-in data.groups as |groupName details|}}
{{#each details as |data|}}
{{groupName}} {{data.name}} - {{data.age}}
{{/each}}
{{/each-in}}
在我看来,您还想在您的应用程序中多次使用此数据。如果这是真的,请考虑为此使用 service 并在您要访问它的每个组件中重用该服务。
在您的组件 js 文件中,您可以设置一个计算的 属性 来访问您服务中的数据。
您可以使用 details
数组的当前索引访问 group
数组:
{{#each model.data.details as |data index| }}
<li>{{get this (concat "model.data.group." index ".group")}} {{data.name}} -- {{data.age}} </li>
{{/each}}
我正在寻找正确的 ember
推荐方法,以便在发送到模板之前对数据值进行分组。
因为我有 2 个不同数组中的数据。
我不想在整个应用程序中保留 no.of 个迭代器。所以我想在新 creating/created 数组或 ember 推荐的正确方法中对数据进行分组。有人帮帮我吗?
我的模型:(样本)
import Ember from 'ember';
export default Ember.Route.extend({
model(){
return {
"data" : {
"group" : [{"group":"newGroup"}, {"group":"oldGroup"}],
"details" : [{"name":"arif","age":"3"}, {"name":"afi","age":"2"}]
}
}
}
});
我的 hbs : /{{data.data.group}} - 如何显示这个?按相等的数组值?/
{{#each model.data.details as |data| }}
<li>{{data.data.group}} {{data.name}} -- {{data.age}} </li>
{{/each}}
</ul>
我理解的对吗,你是想把对应的group显示到details数据集中?如果是这样,您想要显示组的方式不起作用,因为您现在尝试访问时没有 model.data.details.data.group
。请记住,每个循环中的数据是 "reference" 到 model.data.details
我强烈建议您重组数据集,以便在组和详细信息之间建立联系。现在,我可以判断是否有一个......
将其视为一种新的数据结构:
{
data: {
groups: {
newGroup: {
name: "arif",
age: 3
},
oldGroup: {
name: "afi",
age: 2
}
}
}
}
然后你可以像这样迭代这个结构
{{#each-in data.groups as |groupName details|}}
{{#each details as |data|}}
{{groupName}} {{data.name}} - {{data.age}}
{{/each}}
{{/each-in}}
在我看来,您还想在您的应用程序中多次使用此数据。如果这是真的,请考虑为此使用 service 并在您要访问它的每个组件中重用该服务。
在您的组件 js 文件中,您可以设置一个计算的 属性 来访问您服务中的数据。
您可以使用 details
数组的当前索引访问 group
数组:
{{#each model.data.details as |data index| }}
<li>{{get this (concat "model.data.group." index ".group")}} {{data.name}} -- {{data.age}} </li>
{{/each}}