首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在underscore.js模板中打印数组?

如何在underscore.js模板中打印数组?
EN

Stack Overflow用户
提问于 2011-12-28 03:48:53
回答 3查看 27.6K关注 0票数 16

我正在使用underscore.js的模板库,但我不确定如何在模板中使用逻辑。例如,我想在模板中打印一个标记数组。最好的方法是什么?

Javascript:

bunny_data = {
  name: "sprinkles",
  age: 1,
  tags: ['fuzzy','wuzzy']
};

bunny_view = $("#bunny-template").html();
$(body).append(_.template(bunny_view,bunny_data));

模板:

<script type='text/template'>
  <div> 
     <h5><% = name %></h5>
     <ul class='tag-list'>
         <!-- How do I print the tags here? -->
     </ul>
  </div>
</script>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-12-28 23:15:28

你不需要像@Ken建议的那样封装bunny_data,你走在了正确的道路上。不管你是想调用_.函数还是只使用普通的Javascript结构,这取决于你,但是下划线模板中没有内置的流结构,要做到这一点,你只需要嵌入代码(如果你想要的话,你可能想看看ecoMustache或其他东西)。

我的示例如下所示(与您自己的几乎相同):

<script type='text/template' id="bunny-template">
  <div> 
     <h5><%= name %></h5>
     <ul>
       <% for(var tag in tags) { %>
           <li><%= tags[tag] %></li>
       <% } %>
     </ul>
  </div>
</script>

使用以下Javascript:

bunny_data = {
  name: "sprinkles",
  age: 1,
  tags: ['fuzzy','wuzzy']
};

bunny_view = $("#bunny-template").html();
$(body).append(_.template(bunny_view, bunny_data));

您可以验证它是否运行here

(出于个人偏好,除了模板,我是所有下划线的重度用户。因此,如果你有更复杂的用例,我对你必须在其中放入的代码量感到不舒服)。

票数 31
EN

Stack Overflow用户

发布于 2011-12-28 04:02:01

看起来您没有在JavaScript中正确设置bunny_data

而不是:

$(body).append(_.template(bunny_view,bunny_data));

尝试:

$(body).append(_.template(bunny_view, { bunny_data: bunny_data }));

打印模板中的数据(请注意,我在<%= name %>中删除了%后面的空格):

<script type='text/template'>
  <div> 
    <h5><%= name %></h5>
    <ul class='tag-list'>
      <% _.each(bunny_data, function(bd) { %>
        <li><%= bd.name %></li>
        ...
      <% }); %>
    </ul>
  </div>
</script>

希望这能有所帮助。

票数 8
EN

Stack Overflow用户

发布于 2012-04-22 14:31:46

此外,join也可以做到这一点,所以在html中,您将拥有

 <ul>
     <li><%= tags.join('</li><li>') %></li>
 </ul>

jsFiddle上查看它。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8648629

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档