主干循环遍历并从嵌套集合中获取值
Backbone looping through and getting value from nested collection
我在访问骨干集合中的嵌套值时遇到问题。到目前为止,我已经算出了一些数值。这里是html和javascript代码以及我的结果:代码:http://jsfiddle.net/mM2Mk/4/结果:http://tinypic.com/r/2qn3amu/6
然而,这个解决方案中的集合并不遵循我实际api的结构。我想要的结构是这样的:
teamsCollection = new Standings.Collections.TeamsCollection([
{
credit: {
message: "Provided by ",
link: "",
logoUrl: ""
},
metadata: { },
groups: [
{
labels: [ ],
standings: [
{
team: {
id: 9369,
name: "IF Elfsborg",
shortName: "Elfsborg",
link: ""
},
stats: [
{
name: "gp",
value: 30
},
{
name: "w",
value: 18
},
{
name: "d",
value: 5
},
{
name: "l",
value: 7
},
{
name: "gf",
value: 48
},
{
name: "ga",
value: 29
},
{
name: "gd",
value: 19
},
{
name: "pts",
value: 59
}
]
},
{
team: {
id: 19740,
name: "BK Häcken",
shortName: "Häcken",
link: ""
},
stats: [
{
name: "gp",
value: 30
},
{
name: "w",
value: 17
},
{
name: "d",
value: 6
},
{
name: "l",
value: 7
},
{
name: "gf",
value: 67
},
{
name: "ga",
value: 36
},
{
name: "gd",
value: 31
},
{
name: "pts",
value: 57
}
]
},
这段代码为我们提供了一些体育比赛结果,如比赛、胜利、净胜球等。这只是该系列中其他几个团队中的一个。我现在的问题是如何循环遍历嵌套的值并显示它们,就像我在上面的示例(tinypic url)中所做的那样。我的目标是获得团队名称以及统计数据,并在html中显示它们。其他团队也是如此。
只需使用模板并使用foreach循环遍历数组,就可以将accordion HTML放置在适当的位置。
你可以使用已经包含的Underscore模板,因为Underscore是Backbone的依赖项。
或者你也可以使用其他模板引擎,比如Handlebars: source.
都给出了如何遍历对象的例子。
编辑:
让我们做一个随机模板(带下划线,比较困难):
<script id="myTemplate">
<% _.each(standings, function(standing) { %>
<a href="<%= standing.team.link %>"><%= standing.team.name %></a><br/>
<ul>
<% _.each(standing.stats, function(stat) { %>
<li><%= stat.name %>: <%= stat.value %></li>
<% } %>
</ul>
<% } %>
</script>
然后编译它并调用你的组[0]或类似的东西
_.template($('#myTemplate').html(), groups[0]);
或
var myTemplate = _.template($('#myTemplate').html());
myTemplate(groups[0]);
当然你必须调整这些值,但事情是这样的
相关文章:
- 如何使用backbone.js从集合中获取模型名称
- 主干-从模板中迭代的集合中获取特定的模型
- 获取Href的集合
- 尝试从集合中获取特定模型
- Backbone集合:如何从API中获取特定对象以放置在模型中
- 如何获取jQuery集合中的第k个元素..作为JQUERY元素
- 所需响应的主干无限集合获取调用
- Backbonejs最简单的集合获取
- 主干.js:仅添加来自 JSON 集合获取的新模型
- 我无法使用 lodash _.template 从一个主干视图中的多个集合获取数据
- Backbone.js集合获取'这个_byId'未定义
- 使用特定的ajax调用设置集合获取
- 在 Backbone 中使用相同类型的集合获取不同的模型集
- 使用主干集合获取数据子集
- 主干集合获取选项不影响GET请求
- 从backbone.js集合获取model.id使用Tastypie创建成功调用
- Onchange集合获取错误而不是函数
- 主干集合获取抛出id错误
- 从mongodb集合获取所有文档时出错
- 从服务器上的Meteor集合获取项目会抛出“;可以't wait without Fiber”;