首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >backbone模板:从index.jst.eco到index.jst.ejs

backbone模板:从index.jst.eco到index.jst.ejs
EN

Stack Overflow用户
提问于 2012-09-15 13:07:47
回答 3查看 915关注 0票数 0

具体问题:这段代码可以在主干模板index.jst.eco中运行,但在index.jst.ejs中不能运行

代码语言:javascript
复制
<ui>

<% for entry in @entries.models: %>
<li> <%= entry.get('name') %></li>
<% end %>

</ui>

我想知道原因(即如何为ejs修复它),更普遍的是,是否有关于如何在ejs模板中编写代码的全面文档?我找不到任何细节。由于我一直在尝试使用ejs和eco,我注意到:或括号的存在或缺失可能会产生巨大的影响,但我不知道如何知道何时使用什么。

我愿意使用jst.eco或jst.ejs,这取决于哪种语法有更好的文档。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-09-15 13:34:01

这就是用jst.ejs编写eco代码的方式。

代码语言:javascript
复制
   <% for (var i = 0; i < entries.length; i++) { %>
    <li> <%= entries.models[i].get('name') %></li>
    <% } %>

但是,我不能让它与for entry in entries.models迭代器一起工作

票数 0
EN

Stack Overflow用户

发布于 2012-12-24 06:04:28

刚遇到这个问题,这是我的解决方案!

代码语言:javascript
复制
<% entries.each(function(entry){%>
  <li><%= entry.get('name') %></li>
<% });%>
票数 1
EN

Stack Overflow用户

发布于 2015-09-11 16:38:45

据我所知,jst.eco格式是嵌入到jst模板中的CoffeeScript,而jst.ejs只能与JavaScript一起工作。这就是为什么在您的例子中它可以呈现这个JavaScript迭代:

代码语言:javascript
复制
<% for (var i = 0; i < entries.length; i++) { %>

但不是这个CoffeeScript交互:

代码语言:javascript
复制
<% for entry in @entries.models: %>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12434689

复制
相关文章

相似问题

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