我想知道如何在Jade模板中小写条件语句中的值。下面的代码产生错误:
if type.toUpperCase() =="S"
.name.left=person.fullName
else
.name.left=person.shortName
谢谢
答案 0 :(得分:0)
使用Jade / Pug条件中的函数不起作用。它应始终为if myVar == 'myCondition'
如果你想在jade / pug条件中使用函数或其他东西,你应该首先准备你的变量。
通过引导带有减号-
的新行,您可以在JADE / PUG中编写常规JavaScript。这为您提供了解决几乎所有问题的强大武器。
例如,你想根据你的情况检查一个大写字符串,你应该这样做:
- var string = 'myString'
- var myUppercaseString = string.toUpperCase()
if myUppercaseString == 'myCondition'
// Do stuff if condition is met
else
// Do stuff if condition isn't met
在你的情况下它应该是这样的:
- var person = {
- fullName: 'Hans Dieter Müller',
- shortName: 'Hansi'
- }
- var type = 's'
- var type1 = type.toUpperCase()
if type =="S"
.name.left=person.fullName
else
.name.left=person.shortName
if type1 =="S"
.name.left=person.fullName
else
.name.left=person.shortName
以下是一个工作示例:http://codepen.io/pure180/pen/oLdVzg