变量对象的属性名称

时间:2017-09-05 09:00:03

标签: typescript

在打字稿中是否有办法从变量设置属性名称?

像这样的东西

export function objectFactory(prop: string) {
    return {
        prop: {
            valid: false
        }
    };
}

2 个答案:

答案 0 :(得分:22)

您正在寻找computed properties,这是一项ES6功能,并非特定于TypeScript。

export function objectFactory(prop: string) {
    return {
        [prop]: {
            valid: false
        }
    };
}

答案 1 :(得分:0)

你可以这样做:

export function objectFactory(prop: string) {
    let data: any = {};
    data[prop] = {};
    data[prop].valid = false;
    return data;
}