映射到数组中对象中的数组

Map to an array within an object within an array

我仍然无法理解如何使用地图功能。在这种情况下,我的有效负载是一个 JSON 对象,其中包含一个“订单”数组,每个“订单”都是一个对象......我如何创建一个地图,让我到达“ContactEmailAddresses”数组?

{
    "orders": [
        {
            "OrderGroupNumber": 1,
            "Requester": {
                "Name": "Mickey Mouse"
            },
            "ContactEmailAddresses": [
                "user1@abc.com",
                "user2@abc.com"
            ],
            "CreatedByEmailAddress": "user1@abc.com"
        },
        {
            "OrderGroupNumber": 2,
            "Requester": {
                "Name": "Donald Duck"
            },
            "ContactEmailAddresses": [
                "user3@abc.com",
                "user4@abc.com"
            ],
            "CreatedByEmailAddress": "user3@abc.com"
        },
        {
            "OrderGroupNumber": 3,
            "Requester": {
                "Name": "Goofy"
            },
            "ContactEmailAddresses": [
                "user5@abc.com",
                "user6@abc.com"
            ]
        }
    ]
}

我目前无效的尝试是:

payload.*orders map (order, index) ->
{
    order.contactEmailAddresses
}
%dw 2.0
output application/json
---
payload.orders flatMap $.ContactEmailAddresses

输出:

[
  "user1@abc.com",
  "user2@abc.com",
  "user3@abc.com",
  "user4@abc.com",
  "user5@abc.com",
  "user6@abc.com"
]