如果config
参数的类型具有默认值,如何定义参数的类型?
function (config = {}) {};
Run Code Online (Sandbox Code Playgroud)
Sam*_*man 13
function f(config: Object = {}) {}
或者,更一般地说:
function f(p: T = v) {}
where T
是一个类型,是一个类型v
的值T
.
有趣的是,功能的类型f
是(p?: T): void
.也就是说,Flow了解提供默认值会使参数成为可选参数.您不需要显式地使参数类型可选 - 尽管它没有受到伤害.
declare function
在.js.flow
文件中写入语句时,不能包含默认值; 它会导致错误.所以你必须明确声明参数是可选的:
declare function f(p?: T): void;