对象属性之一的流定义

时间:2017-09-07 03:13:27

标签: javascript ecmascript-6 flowtype

我有一个方法可以使用两个参数之一来定义是否启用某些功能

type Params = Enabled | Disabled

EnabledDisabled的类型定义如

type Disabled = {| 
    config?: string,
    flags?: Array<string> | string
|}

type Enabled = {|
   url?: string,
   flags?: Array<string> | string
|}

如何注释如果函数接收其中一个类型,只能接受其中一个属性?我们说

myWeirdFunction({ config: 'bar', flags: 'foo' })

不应该被接受,因为只能使用其中一个属性?

0 个答案:

没有答案