0

如何使用 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 中一样),但它不起作用。通常我会直接在模板中输入 <%= name %>,但在这种情况下,对象键是动态确定的。

关于如何做到这一点的任何想法?谢谢!

4

1 回答 1

0

这是一个简单的解决方案:

var compiled = template({data:obj}); 

然后只是迭代“数据”

于 2012-06-04T22:15:36.063 回答