【发布时间】:2020-09-02 06:35:18
【问题描述】:
您好,我想用变量索引对象接口
这是我的界面:
interface OptionsRedux {
default_route: DefaultRoute[];
insurance_company: InsuranceCompany[];
marital_status: MaritalStatus[];
reason: Reason[];
termination_reason: TerminationReason[];
}
type optionGroupTypes = keyof OptionsRedux;
现在我的代码如下所示:
interface GetOptions {
type: ActionTypes.getOptions,
payload: {group: optionGroupTypes, values: OptionsRedux[optionGroupTypes]}
}
export const getOptions = (
group: optionGroupTypes,
values: OptionsRedux[optionGroupTypes]
): GetOptions => ({
type: ActionTypes.getOptions,
payload: { group, values },
});
这给了我有效载荷值的类型:
DefaultRoute[] | InsuranceCompany[] | MaritalStatus[] | Reason[] | TerminationReason[]
但我想做这样的事情:
interface GetOptions {
type: ActionTypes.getOptions,
payload: {group: optionGroupTypes, values: OptionsRedux[group]}
}
这让我知道该组是未定义的。
我的目标是,当我使用函数 getOption("default_route", values) 时,值必须是:
DefaultRoute[]
有什么想法吗?找不到任何可行的方法
【问题讨论】: