模組類型
匯入和匯出類型
在模組 (檔案) 之間共用類型通常很有用。在 Flow 中,您可以從一個檔案匯出類型別名、介面和類別,並在另一個檔案中匯入它們。
exports.js
1export default class MyClass {};2export type MyObject = { /* ... */ };3export interface MyInterface { /* ... */ };
imports.js
import type MyClass, {MyObject, MyInterface} from './exports';
別忘了在檔案開頭加入
@flow
,否則 Flow 將不會回報錯誤.
將值作為類型匯入和匯出
Flow 也支援使用 typeof
匯入其他模組匯出的值的類型。
exports.js
1const myNumber = 42;2export default myNumber;3export class MyClass { /* ... */ };
imports.js
import typeof MyNumber from './exports';
import typeof {MyClass} from './exports';
const x: MyNumber = 1; // Works: like using `number`
就像其他類型導入一樣,此程式碼可以由編譯器剝離,以便它不會對其他模組新增執行時間相依性。