0

我如何结合以下类型定义,这样我就不必重复自己了?

type Lama = {|
name: string,
|};

type LamaWithHat = {|
name: string,
hat: string,
|};

尝试使用Interseptions但显然语法可能是错误的:

type LamaWithHat = {|
hat: string,
|} & Lama;
4

1 回答 1

1

如果我们这样做 /* @flow */

type Lama = {|
name: string,
|};

type LamaWithHat = {|
...Lama,
hat: string,
|};

const a: Lama = {
    name: 'rahul'
}

const b: LamaWithHat = {
    name: 'rahul',
    hat: 'circluar'
}

test this code here https://flow.org/try/#0PQKgBAAgZgNg9gdzCYAoVAXAngBwKZgAyAhgLbFgC8YA3gD6oB2ZeAXGAM4YBOAlowHMANKjoBfANzps+ImWIB1XhgAWACWIYqtBgDp9JciJWb2XPoJHipqAMZxGXMMXaGK1GqjDewzUmzAAcm5iFQBXGEDUMXR7Ry0AI1d5JVUNLQ8vHz8A4NCIwJEfMBMMdkDbXm5bGDDibiixIA

于 2020-09-10T09:22:42.743 回答