TypeScript:使用函数参数作为 JSON-键名

TypeScript: Using function parameter as JSON-key name

以下情况:

setFlags(data:any, key:string) {
    this.flags.key= data;
}

假设数据为 {'foo': 'is cool'},键为 'bar',标志应如下所示:

{
    'bar': {'foo': 'is cool'}
}

是否有任何简单的解决方案?

编辑: 对评论中问题的回复:它是关于一个 TypeScriptClass,它将用作服务,存储标志。

@Injectable()
export class FormStoreService {
    flags:any = {};
    constructor() {}
    setFlags(data:any, key:string) {
        this.flags.key = data;
    }
}

当您写 foo.bar 时,您正在设置一个名为 bar 的 属性。如果 属性 的名称是动态的,则应使用 foo[bar] 语法。 所以 setFlags 方法变成了

setFlags(data:any, key:string) {
 this.flags[key] = data;
}