我试图声明并使用通用流类型。它们在导出类型时完美地工作,然后导入到模块中。但是,当我尝试将它们移动到流声明时,flow会抛出以下错误:
^^^^节点。应用多态类型需求。 (可以使用*
表示可推文)
这有效:
定义/ module.js
export type Node<T:Object> = {
node: T,
}
export type Connection<T:Object> = {
edges: Array<Node<T>>,
}
export type BaseRelayNode = {
__dataID__: GlobalID,
[fieldName: string]: any,
}
export type BaseRelayConnection = Connection<BaseRelayNode>;
流量/ module.js
declare type GlobalID = string;
但是,我想完全摆脱定义/ module.js和m
这不是:
流量/ module.js
declare type GlobalID = string;
declare type Node<T:Object> = {
node: T,
}
declare type Connection<T:Object> = {
edges: Array<Node<T>>,
}
declare type BaseRelayNode = {
__dataID__: GlobalID,
[fieldName: string]: any,
}
declare type BaseRelayConnection = Connection<BaseRelayNode>;
如何使用类型声明修复版本以避免导出/导入这些类型?