指点成金-最美分享吧

登录

freemarker 表达式为空报错 遍历list 判空

佚名 举报

篇首语:本文由小编为大家整理,主要介绍了freemarker 表达式为空报错 遍历list 判空相关的知识,希望对你有一定的参考价值。

以下例子参考freemarker官方文档 ,在freemarker中,默认的如果表达式是空会报错。所以需要对表达式进行判空操作。

修复值为空报错

  • 判断属性为空
    • $myobj.myProp! 如果myProp为空,则不报错;
  • 返回默认值
    • $myobj.myProp!"默认值" 如果myProp为空,则不报错,同时返回“默认值”。这种只能在myProp为空时不报错,但myobj为空还会报错,继续看下边。
  • 对象和属性都判空
    • $(myobj.myProp)!"默认值" 如果myobj为空或者myProp为空,都不报错,并返回“默认值”

遍历List判空

  • 在遍历List时,如果为null,则会报错,此时可使用if+不存在值检测

    有值再进行遍历。
<#if myList??><#list myList as ele>

更进一步只有list不是empty时才显示;

<#if myList?? && myList?size gt 0><#list myList as ele>

以上是关于freemarker 表达式为空报错 遍历list 判空的主要内容,如果未能解决你的问题,请参考以下文章