我正在测试Flow以便键入我们的JavaScript,并且我想为内部库创建一个libdef。它是这样导入的:
And if alpha.eq.zero.
The documentation并没有真正解决如何为像这样的深层路径创建库定义的问题,仅针对顶级路径。
我将libdef文件放在哪里?我怎么称呼它?以及它的外观(当然会忽略libdef的实际实现)?
在此先感谢您的帮助!
答案 0 :(得分:2)
单个libdef中可以有多个declare module
。您可以使用深层路径作为模块名称。这个libdef文件在哪里都没有关系,只要它包含在[libs]
的{{1}}部分中即可。
在此示例中,.flowconfig
具有出口,而深层路径具有出口:
libdef:
internally-shared-libs
用法:
// @flow
declare module 'internally-shared-libs' {
declare export function hello(): string;
declare export function bye(): string;
}
declare module 'internally-shared-libs/decorators/withValidation' {
// You will obviously want to improve these types
declare type Input = any;
declare type Output = any;
declare export default function withValidation(input: Input): Output;
}