Javascript Underline.js中的If条件语句
我正在与backbonejs一起使用下划线JS的Javascript Underline.js中的If条件语句,javascript,jquery,backbone.js,underscore.js,Javascript,Jquery,Backbone.js,Underscore.js,我正在与backbonejs一起使用下划线JS的\.template()函数。在使用Underline.js v1.3.0时,我可以使用if语句,如下所示: <script type="text/template" id="tpl_listing_list_item"> <% if(<%= address_2 %>){%>, <%= address_2 %><%}%> </script> , 问题:更新到v1
\.template()
函数。在使用Underline.js v1.3.0时,我可以使用if
语句,如下所示:
<script type="text/template" id="tpl_listing_list_item">
<% if(<%= address_2 %>){%>, <%= address_2 %><%}%>
</script>
,
问题:更新到v1.3.3后,我在Javascript控制台中得到错误
Uncaught SyntaxError:Unexpected token invalible
。此功能是否已删除?删除if
代码可修复错误。如果删除了它,还有其他方法可以实现同样的效果吗?在您的If
语句中,您已经跳转到插值模式,因此是正确的,但是对于像您这样的模板,您可以使用特殊工具来清理标记:
您还可以在JavaScript代码中使用print
。这有时比使用
更方便
var compiled=\模板(“”);
汇编({绰号:“stooge”});
=>“你好,斯多奇。”
这样你就可以减少噪音,像这样:
<script type="text/template" id="tpl_listing_list_item">
<% if(address_2){ print(', ', address_2) } %>
</script>
演示:对打印功能一无所知。每天学习新的东西@通力:你总是引用答案中的文档来学习各种东西:)
var t = _.template('{% if(address_2){ %}, {{ address_2 }} {% } %}')
undefined
t({'address_2': 'test'});
", test "
var compiled = _.template("<% print('Hello ' + epithet); %>");
compiled({epithet: "stooge"});
=> "Hello stooge."
<script type="text/template" id="tpl_listing_list_item">
<% if(address_2){ print(', ', address_2) } %>
</script>