在Underscore.js网站上,我们获得了代码示例:
var list = "<% _.each(people, function(name) { %> <li><%= name %></li> <% }); %>";
_.template(list, {people: ['moe', 'curly', 'larry']});
=> "<li>moe</li><li>curly</li><li>larry</li>"
让我们假设我想要传递2个数组而不是1个(@ people)。所以我可以做类似的事情:
{ %> <li><%= name %> , <%= address %></li> <% }
我修了一下,不知道如何使用这个方法。
答案 0 :(得分:4)
我相信你必须使用&#34; name&#34;将数组变成一个对象数组。和&#34;地址&#34;属性:
_.template(list, {people: [
{ name: 'moe', address: 'foo'},
{ name: 'curly', address: 'bar' }
] });
然后参数将是对象&#34; person&#34;而不仅仅是字符串&#34; name&#34;:
var list = "<% _.each(people, function(person) { %> <li>Name: <%= person.name %>, Address: <%= person.address %></li> <% }); %>";