在Mule 4中声明动态dataweave变量,就像在Mule 3中使用一样

在Mule 4中声明动态dataweave变量,就像在Mule 3中使用一样,mule,using,dataweave,Mule,Using,Dataweave,我需要在Dataweave中创建一个运行时变量,就像我们在Mule 3中使用关键字所做的一样。有人能告诉我如何在Mule 4中实现这一点吗?您仍然可以在Mule 4/Dataweave 2中使用关键字 局部变量在DataWeave脚本主体中初始化,并且只能在初始化它们的表达式范围内通过名称引用 初始化局部变量的语法如下所示:使用(=) 可以在using函数中将多个局部变量定义组合为逗号分隔的列表。例如:使用(firstName='Annie',lastName='Point') 以下是在对象中定

我需要在Dataweave中创建一个运行时变量,就像我们在Mule 3中使用关键字所做的一样。有人能告诉我如何在Mule 4中实现这一点吗?

您仍然可以在Mule 4/Dataweave 2中使用
关键字

局部变量在DataWeave脚本主体中初始化,并且只能在初始化它们的表达式范围内通过名称引用

初始化局部变量的语法如下所示:使用(=) 可以在using函数中将多个局部变量定义组合为逗号分隔的列表。例如:使用(firstName='Annie',lastName='Point')

以下是在对象中定义局部变量的示例:

%dw 2.0
output application/xml
---
{
  person: using (user='Greg', gender='male') {
    name: user,
    gender: gender
  }
}
注意,这些变量的作用域仅限于“person”对象。在人员之外访问它们将抛出错误


这里有关于这方面的完整文档:

除了使用
之外,还有
do
可以用来实现类似的结果。关于
do
的文档:是的,我建议使用do,而不是使用更简单、更清晰的IMHO
%dw 2.0
output application/xml
---
{
  person: using (user='Greg', gender='male') {
    name: user,
    gender: gender
  }
}