A 博文 的博客中描述了一种叫做 "类型优先 "的Flow "重新架构"。据我所知,唯一的描述是博文中的这段话。
"... ...它利用文件边界的完整类型注释来进行更好的(更可并行和更少冗余)单独编译。"
有没有更详细的地方?具体来说,我想知道这些全注释是什么:对源代码和声明文件的新限制是什么?
例如,是否允许这样做?
import { func } from "./other-module";
export const myNumber = func(num1, num2);
在TypeScript中,这是个问题,因为TypeScript的类型为 myNumber
在不知道类型的情况下,是不可能解决的。func
. Flow的 "类型优先 "重新架构后,会不会要求用户写。
import { func } from "./other-module";
export const myNumber: number = func(num1, num2);
这只是我的一个具体问题。我需要的是更多的信息和一个文档的链接,以解释重新架构的所有已知影响。
这听起来真的很华丽,也许它的本质是这样的。但实际上它很简单。在你的代码片段中,你是完全正确的,它几乎就是这个意思。
在你导出之前,你必须有一个明确定义的类型。
虽然不一定就在你导出之前。下面的方法也可以。
const TestComponent = (): React.Node => {};
export default TestComponent;
它增加了一点开销,但好处是。
他们还发布了一篇新的博客文章,进一步阐述了这个问题,因为类型第一现在已经正式发布了。https:/medium.comflow-types-first-a-scalable-new-architecture-flow-3d8c7ba1d4eb。