如何解决震动规格将元素数组转换为具有ID的对象
震动对我来说是陌生的,直到我创建此帖子为止,我一直在努力解决这个问题。
我要转这个:
{
"Properties": [{
"Id": "property1","Values": ["randomValue1","randomValue2"]
},{
"Id": "property2","Values": "randomValue3"
},{
"Id": "property3","Values": "randomValue4"
}]
}
进入
{
"Properties": [{
"Id": "property1","Values": "randomValue1"
},{
"Id": "property1","Values": "randomValue2"
},"Values": "randomValue4"
}]
}
每个属性的值可以是1个值,也可以是数量未知的数组。
我将以下json更改为已经在第一个json中看到的内容:
{
"Properties": {
"property1": ["randomValue1","randomValue1"],"property2": ["randomValue3"],"property3": ["randomValue4"]
}
}
规格:
[{
"operation": "shift","spec": {
"Properties": {
"*": {
"*": "Properties[#2].Values","$": "Properties[#2].Id"
}
}
}
}]
RHS上的属性名称是通用的,属性值的数量也可以不同。 非常感谢您抽出宝贵时间为我提供帮助。
解决方法
检查这是否有帮助:
[
{
"operation": "cardinality","spec": {
"Properties": {
"*": {
// normalize values to always be a list
"Values": "MANY"
}
}
}
},{
"operation": "shift","spec": {
"Properties": {
"*": {
"Values": {
"*": {
// create arrays with values and ids
"@": "Values","@(2,Id)": "Id"
}
}
}
}
}
},"spec": {
"Values": {
"*": {
// create the final list joining ids and values at the indexes you want
"@": "Properties[&1].Values",Id[#1])": "Properties[&1].Id"
}
}
}
}
]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。