我正在使用Flow来帮助创作一个JS项目。如果我想提供libdef file 来补充它,我是否需要手动创建它,或者我能够执行一些我不知道的魔法命令,它会为我生成lib def吗?
$ flow-typed doyourmagic
之类的东西会很好。
编辑:
找到此https://stackoverflow.com/a/38906578/192999
其中说:
有两件事:
如果文件归您所有(即不是node_modules中的第三方lib等),那么您可以在其旁边创建一个记录其导出的* .js.flow文件。
如果文件不归您所有(即node_modules中的第三方lib等),那么您可以在flow-typed / name-of-library.js中创建一个libdef文件
对于.js.flow文件 你写这样的定义:
// @flow
declare module.exports: { ... }
对于libdef文件,您可以编写如下定义:
declare module "my-third-party-library" { declare module.exports: {... } }
对于我的问题,我属于“由你拥有”阵营。
我想我很困惑:
另外,为什么我需要手动创建.js.flow文件?这不是神奇地产生的吗?也许这是未来的意图但尚未实施。
答案 0 :(得分:2)
我找到了一个很好的guide,展示了如何将流代码与编译代码打包在一起。所以:
flow gen-flow-files
,虽然这仍然是实验性的,但可能会失败。*.js.flow
,流量检查器会在您导入库时自动选择它们。