繁体   English   中英

$null 检查速度

[英]$null check in velocity

通过您更新的资源,我开始了解在 velocity 1.6 中使用 $null 进行空值检查。 资源: 读取在 Velocity 模板中映射的模型对象但是我面临着如此多的挑战,以至于没有 $null 用于速度中的空检查,因为没有提供关于此的文档。 请向我提供说明 $null 对空检查速度有效的文档。

在此先感谢幸运

要检查变量是否不为空,只需使用#if ($variable)

#if ($variable) 
 ... do stuff here if the variable is not null
#end

如果您需要在变量为 null 时做一些事情,只需否定测试

#if (!$variable)
 ... do stuff here if the variable is null
#end

方法 1:使用 null 被评估为 false 条件这一事实。 (参见http://velocity.apache.org/engine/devel/user-guide.html#Conditionals

#if( ! $car.fuel )

注意:如果 $car.fuel 的结果是布尔值 false,条件也会通过。 这种方法实际上检查的是引用是 null 还是 false。

方法 2:使用 null 在安静引用中被评估为空字符串这一事实。 (参见http://velocity.apache.org/engine/devel/user-guide.html#quietreferencenotation

#if( "$!car.fuel" == "" )

注意:如果 $car.fuel 的结果是空字符串,条件也会通过。 这种方法实际上检查的是引用是否为 null 或为空。 顺便说一句,只需检查是否为空就可以通过以下方式实现:

#if( "$car.fuel" == "" )

方法 3:结合方法 1 和 2。这将检查 null 和 null。

#if ((! $car.fuel) && ("$!car.fuel" == ""))

注意:这里的逻辑是:“(null 或 false)和(null 或

empty-string)" => 如果为真,则必须为 null。这是真的,因为“false and empty-string and not null”永远不会是 true。恕我直言,这会使模板太复杂而难以阅读。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM