以下(简化)代码
type Category = {
id: string,
name: string,
};
type Option = {
id: string,
name: string,
isSelected: boolean,
};
const options = categories.map((c: Category): Option => ({
isSelected: true,
...c,
}));
产生错误:
Flow:无法传播对象文字,因为 Flow 无法确定对象文字 [1] 的类型。
Category
[2] 是不精确的,因此它可能包含与对象字面量 [1] 中的 ' 定义isSelected
冲突的类型。isSelected
尝试使Category
[2] 精确。
我错过了什么?