如何使用underscore.js模板迭代“this”(或传递给模板的数据对象)?例如,如果我将这样的数据对象传递给模板:
obj = {name: "ben", description: "funny looking"}
var template = _.template("<ul> <% _.each(this, function(x, y){ print('<li>'+x+'<li>')}) %> </ul>");
var compiled = template(obj);
我希望迭代器中的“this”循环遍历数据对象(就像在Handlebars中一样),但它不起作用。通常我会直接输入&lt;%= name%&gt;进入模板,但在这种情况下,对象键是动态确定的。
关于如何做到这一点的任何想法?谢谢!
答案 0 :(得分:0)
这是一个简单的解决方案:
var compiled = template({data:obj});
然后只是迭代“数据”