首页 > underscore.js模板内如何定义循环输出?

underscore.js模板内如何定义循环输出?

在网上找了许多资料都没找到,所以就在这里向大家请教了。

想问一下,用underscore.js去定义模板的时候,应该如何定义里面的循环输出呢?打比方说像下面这样?

<script type="text/template" id="myTemplate">
/***
循环输出
****/
{foreach from=$custid item=curr_id}
    <div>{$curr_id}</div>
{/foreach}
</script>

既然是underscore,用underscore内置的方法_.each即可

<% _.each(obj,function(item){ %>
    <div><%= item %></div>
<% }) %>

如果你传入模板的对象直接就是数组的话,用obj引用这个数据,因为默认情况下underscore将传入的对象命名为obj


你想要这样的?

var tmp = '<% for (var i = 0; i < count; i++) { %>' +
            '<div><%= i %></div>' +
            '<% } %>';

// output: <div>0</div><div>1</div><div>2</div><div>3</div><div>4</div>
console.log(_.template(tmp)({count: 5}));
【热门文章】
【热门文章】