2017-06-13 55 views
0

我寫了一個名爲redux-async-action-reducer的庫。我已經將它寫在打字稿中。我想添加流量定義。將流動定義添加到打字稿庫

有沒有什麼辦法可以將它與我的圖書館一起保存,而不是單獨創建並將其放入flow-typed

類似d.ts的流量定義文件?

+0

當您已經使用打字稿時,爲什麼要添加流程? –

+1

因此,使用Flow的圖書館的消費者也可以獲得類型檢查 –

+0

OP可能會發現https://github.com/facebook/flow/issues/1996#issuecomment-230919868有趣。 – popham

回答

1

您可以將您的圖書館隨.js.flow文件一起發送到您的包入口點。在你的情況(因爲你的包切入點是dist/index.js你會在dist/index.js.flow創建一個文件。

流動然後把這個像一個正常的源文件。你必須記得把// @flow在上面。你可以寫函數和類與掐滅實現,或者使用declare(如declare export function foo(x: string): string;,類相似)

注意,這實際上是比庫定義文件不同 - 流將像對待源代碼

流式輸入是分發libdefs的首選方式。使用.js.flow文件可導致Flow在各種版本之間做出突破性更改時的問但是,由於您將分發手動管理界面,而不是將整個庫源以.js.flow文件形式發送,因此該問題將得到緩解。