DataWeave 字段参考

DataWeave field referense

我是 Mule 的新手,我正在尝试创建一个有效载荷。我查看了多个示例,但无法为以下场景找到解决方案。我想根据 sampleRecord2.I 的布尔值填充 sampleRecord3,但在以下情况下不断出现错误。任何 help/suggestions?

%dw 2.0
output application/json
---
{
    "sampleRecord1" : "Test1",
    "sampleRecord2" :  true/false,
    "sampleRecord3" :  if(sampleRecord2==true) 5 else 10
}

在 DataWeave 中,对象中的每个键值都是独立的,您不能引用它们。相反,您可以使用局部变量在两个地方重用相同的值:

%dw 2.0 
output application/json
---
do {
    var sampleRecord2Value=true
    ---
    {
        "sampleRecord1" : "Test1",
        "sampleRecord2" :  sampleRecord2Value,
        "sampleRecord3" :  if(sampleRecord2Value==true) 5 else 10
    }
}

输出:

{
  "sampleRecord1": "Test1",
  "sampleRecord2": true,
  "sampleRecord3": 5
}