【发布时间】:2014-04-05 22:50:36
【问题描述】:
我在将以下ejs转换为jade时遇到了麻烦:
<% if (message.length > 0) { %>
<div class="alert alert-danger"><%= message %></div>
<% } %>
这块玉石看起来怎么样?
【问题讨论】:
我在将以下ejs转换为jade时遇到了麻烦:
<% if (message.length > 0) { %>
<div class="alert alert-danger"><%= message %></div>
<% } %>
这块玉石看起来怎么样?
【问题讨论】:
我会这样写:
if message.length
.alert.alert-danger= message
... 因为message 是一个字符串,message.length 仅当它是一个空字符串时才计算为假值 (0)。我还在这里使用了buffered output(注意= 字符),这样message 的值就会被HTML 转义。
另一种方法是直接将message 与空字符串进行比较:
if message !== ''
.alert.alert-danger= message
请注意,我在 div.alert.alert-danger 表达式中删除了 div,因为它是 Jade 模板的默认元素。您是否使用过任何其他元素,您必须以它的标记名开始表达式。
【讨论】:
试试下面的sn-p
https://github.com/visionmedia/jade
- if(message.length>0){
div.alert.alert-danger #{message}
- }
【讨论】: