第一次在freemaker中用三元表达式 以为和js 的一样 就写了
${true ? 'checked': ''}
然鹅 ,编辑器红下划线报错,后台报错。
编辑器报错是 identifier expected 意思是期望标识符错误 ,就检查了所有标点符号,没有问题。
后来想到可能是语法问题就去查了一下。
原来真的是语法问题 ,FreeMarker 本身没有三目运算符,我们就用内建函数?string( , ) 来判断
在js中 else 所对应的是 : 而在freemaker中对应的是 ,
以下就是正确的三元表达式。
${true ? string('checked','')}