Json 空变量赋值时的DataWeave最佳实践
这是一个JSON-JSON转换,将布尔输入Json 空变量赋值时的DataWeave最佳实践,json,mule,integration,transformation,dataweave,Json,Mule,Integration,Transformation,Dataweave,这是一个JSON-JSON转换,将布尔输入(“true”|“false”)转换为字符输出(“Y”|“N”)。 因此,我们选择这样的方式: varOutput: ('Y' when payload.varInput otherwise 'N') 但是如果varInput为null呢?我们有例外。如果不是这样,我可以用另一个来控制它: varOutput: ('Y' when payload.varInput != null otherwise 'N') when payload.varInput
(“true”|“false”)
转换为字符输出(“Y”|“N”)
。
因此,我们选择这样的方式:
varOutput: ('Y' when payload.varInput otherwise 'N')
但是如果varInput为null呢?我们有例外。如果不是这样,我可以用另一个来控制它:
varOutput: ('Y' when payload.varInput != null otherwise 'N')
when payload.varInput != null otherwise null,
最后一个是空安全的,但我还是觉得应该有一个更优雅的方法。使用
默认值
{varOutput: ( payload.varInput default 'N')
}
或者,除非/否则为空安全且更优雅:
{
varOutput: ('Y' unless payload.varInput !=null otherwise 'N')
}
仍然需要将true转换为“Y”。{varOutput:'Y'当(payload.varInput default false)默认值'N'时如何}当然,看起来不错。添加了另一个选项“除非/否则”。