如何在Typescript中正确创建[Key: string] ?



我想创建这个作为最终结果:{"customerName: {"contains": "bri"}},但我一直得到变量的名称而不是写。我试了很多方法,就是不能让它像我想的那样发展。希望这是简单的,我只是完全忽略了它。

interface IGraphQLFilterVariable {
[key: string]: [key: string] | any | IGraphQLFilterVariable[]
}
let property = "customerName";
let type = "contains";
let filter = "bri";
let singleFilter: IGraphQLFilterVariable = {};
singleFilter[property] = {
type: filter
};
console.log(singleFilter);

游乐场

定义对象时,默认情况下只有对象的是表达式。键被视为字符串,所以当你进入{ type: filter }时,它本质上相当于{ "type": filter }

要使用变量的值作为对象的键,请将键括在括号中:

singleFilter[property] = { [type]: filter };

然后,您的对象将查找变量type的值,并将其用作对象的键。

相关内容

最新更新