具体问题:这段代码可以在主干模板index.jst.eco中运行,但在index.jst.ejs中不能运行
<ui>
<% for entry in @entries.models: %>
<li> <%= entry.get('name') %></li>
<% end %>
</ui>我想知道原因(即如何为ejs修复它),更普遍的是,是否有关于如何在ejs模板中编写代码的全面文档?我找不到任何细节。由于我一直在尝试使用ejs和eco,我注意到:或括号的存在或缺失可能会产生巨大的影响,但我不知道如何知道何时使用什么。
我愿意使用jst.eco或jst.ejs,这取决于哪种语法有更好的文档。
发布于 2012-09-15 13:34:01
这就是用jst.ejs编写eco代码的方式。
<% for (var i = 0; i < entries.length; i++) { %>
<li> <%= entries.models[i].get('name') %></li>
<% } %>但是,我不能让它与for entry in entries.models迭代器一起工作
发布于 2012-12-24 06:04:28
刚遇到这个问题,这是我的解决方案!
<% entries.each(function(entry){%>
<li><%= entry.get('name') %></li>
<% });%>发布于 2015-09-11 16:38:45
据我所知,jst.eco格式是嵌入到jst模板中的CoffeeScript,而jst.ejs只能与JavaScript一起工作。这就是为什么在您的例子中它可以呈现这个JavaScript迭代:
<% for (var i = 0; i < entries.length; i++) { %>但不是这个CoffeeScript交互:
<% for entry in @entries.models: %>https://stackoverflow.com/questions/12434689
复制相似问题