问题描述
{
fieldA: 'foo',fieldB: 'bar'
}
并且我想将其转换为一个对象,该对象应该按索引对字段进行排序:
{
fieldA: 0,fieldB: 1,}
我的想法:
{
[key]: 0,for key in std.objectFields(renameByName)
}
那会产生:
{
fieldA: 0,fieldB: 0,}
完整参考代码:
organizeTransformation(renameByName):: {
id: "organize",options: {
excludeByName: {},indexByName: {
[key]: 0,for key in std.objectFields(renameByName)
},renameByName: renameByName,},
我的问题:
因为 Jsonnet 没有用于循环的迭代器,所以我不确定如何在这里使用计数器?
解决方法
我找到了一个解决方法:
organizeTransformation(renameByName):: {
local keys = std.objectFields(renameByName),id: "organize",options: {
excludeByName: {},indexByName: {
[keys[i]]: i,for i in std.range(0,std.length(keys) - 1)
},renameByName: renameByName,},