我尝试用javascript中的mustache模板来呈现一个对象数组,我还没有发现其他人问过这个问题。我可以很好地呈现一个对象数组,但我不知道如何呈现一个对象数组。我可以给每个嵌套数组赋值给它自己的变量,但它们可能有任意多个,所以我真的需要把它们作为一个数组来保存。
下面是我需要呈现的数据类型:
[
[
{ id: 12345, name: "Billy" },
{ id: 23456, name: "Joe" },
{ id: 34567, name: "Jenny" }
],
[
{ id: 45678, name: "Amy" },
{ id: 56789, name: "Julie" },
{ id: 67890, name: "Sam" }
]
]
外部数组可以包含任意数量的嵌套数组,并且每个嵌套数组可以包含任意数量的对象。
我不知道这是否适用于mustache。我试着使用一个函数,这是我第一次使用mustache函数,所以可能我做错了什么。我是从一个 Backbone.js 视图的render函数调用它的。数组的数组(如上所示)是视图模型属性的一部分。所以这里是我所尝试的。
render:
function ()
{
this.model.attributes.getList =
function ()
{
return function (str, func) { return 'What in the world should I return here?'; }
}
this.$el.html (Mustache.render ($ ('#detail-template').html (), this.model.attributes));
return this;
},
这里是我的模板的一部分,我试图在这里使用函数。
{{#getList}}
{{name}}
{{/getList}}
我很确定{{name}}不属于那里,但我不知道我还能放什么。
我尝试返回func(str),但它输出的只是一个包含[object对象]、[object对象]、[object对象]、[object对象]、[object对象]、[object对象]、[object对象]、[object对象]的长字符串。
我不能把那个字符串作为json对象,它只是一个字符串。
我对脊椎和胡子都不太熟悉,所以我想有人可能会有一个“最佳实践”的解决方案,或者至少可以告诉我,如果这是不可能的,这样我就不会在上面浪费时间了。我在互联网上找不到类似的问题。
1条答案
按热度按时间jogvjijk1#
这个问题已经有2年了,但我想迟问总比不问好。你可以用{{.}}来引用数组中的当前元素。