【问题标题】:Underscore's template method with multiple argumentsUnderscore 的带有多个参数的模板方法
【发布时间】:2014-07-29 17:29:02
【问题描述】:

在 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 个(@人)。这样我就可以做类似的事情:

{ %> <li><%= name %> , <%= address %></li> <% }

我修改了一下,不知道如何使用该方法。

【问题讨论】:

标签: javascript underscore.js


【解决方案1】:

我相信您必须将数组变成具有“名称”和“地址”属性的对象数组:

_.template(list, {people: [ 
    { name: 'moe', address: 'foo'}, 
    { name: 'curly', address: 'bar' } 
] });

那么参数将是对象“person”,而不仅仅是字符串“name”:

var list = "<% _.each(people, function(person) { %> <li>Name: <%= person.name %>, Address: <%= person.address %></li> <% }); %>";

【讨论】:

  • 谢谢,这为我解决了。当计时器结束时,我会接受这个。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-06
  • 2014-09-08
  • 2011-05-28
  • 2016-04-16
  • 1970-01-01
相关资源
最近更新 更多