【发布时间】:2018-03-12 17:59:06
【问题描述】:
我不明白工会是如何运作的。
文档参考
看到这个doc example关于exact Union Types
问题
下面的代码将在item.rocks 上引发流错误:
/* @flow */
type MoutainType = {|
rocks: boolean,
|};
type OceanType = {|
waves: boolean,
|};
type HolidayType = MoutainType | OceanType;
const haveHoliday = (item: HolidayType) => {
return item.rocks; //----------------> Error (but shouldn't)
}
自己试试
【问题讨论】:
-
您当前的设置意味着它可以是任何一种类型,但其中只有一个具有
rocks属性。流错误,因为它告诉您该属性并不总是有效。是否期望HolidayType成为具有 both 的对象?如果是这样,也许你想要flow.org/en/docs/types/intersections,而不是联合。
标签: flowtype