FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出,用FreeMarker判断对象是否为空的方法。
一般数据在后端判断, 前端不管逻辑只管显示。
freemarker中显示某对象使用${name}.
但如果name为null,freemarker就会报错。如果需要判断对象是否为空:<#if name??>……#if>。当然也可以通过设置默认值${name!""}来避免对象为空的错误。如果name为空,就以默认值(“!”后的字符)显示。
对象user,name为user的属性,这时user,name都有可能为空,可以写成${(user.name)!""},表示user或者name为null,都显示为空。
同意楼上的解释,代码这样改就可以了:
<#if user??>
${(user.name)!""}
#if>
user为空不报错才怪呢??
user对象存在的时候,你才能访问它的属性 啊,否则有什么意义