export type TOption = {
input_type: string,
label: string,
option_id: string,
value: any
};
export type TOptions = {
[key: string]: TOption
};
我正在尝试定义一个Type,它是一个具有动态数量的键值对的对象,其中每个值都是一个具有input_type,label,option_id,value的对象。
但是,流程正在抛出不兼容的类型错误
Property `option_id` is incompatible:
19: [key: string]: TOption
^^^^^^^ object type. This type is incompatible with
14: option_id: string,
^^^^^^ string
我认为我错误地定义了它,但我不确定如何定义它。有谁可以指出这个问题?
答案 0 :(得分:1)
以下代码适用于动态嵌套类型。如果你想要实现同样的目标。
/* @flow */
type TOption = {
input_type: string,
label: string,
option_id: string,
value: any
}
type TOptions = {
[key: string]: TOption
}
var myObj: TOptions = {
data: {
input_type: 'my_input_type',
label: 'my_label',
option_id: 'my_option_id',
value: 12
}
}