私は、1つのライブラリが別のライブラリを拡張するいくつかのケースに遭遇しました。特に、ReactとReduxでの使用では特にそうでした。一例として、他のライブラリによって拡張された型スクリプト定義のオーバーライド
、私はこのように定義することができ機能をエクスポートJSライブラリを使用していたと言う。
function dispatch(action:IAction):void;
interface IAction {
type: string;
}
そして私は、コールバックを許可するようにdispatch
機能を強化し、他のJSライブラリを使用し、その可能性
function dispatch(action:IAction | IActionCallback):void;
interface IActionCallback {
(dispatch:IDispatch):void;
}
問題は、2番目のライブラリが最初のライブラリを拡張するということです。これはどのようにタイピングで正しく表現できますか?それともそれはできますか?
これを消化しようとしています...私がRedux Thunkで持っている問題は、 "redux"から '{IDispatch}をインポートすると、redux-thunkの拡張については分かりません機能をアクションにすることができます。それは私が '{IDispatch}を"〜redux-thunk〜redux "からインポートする場合にのみ機能します。これは実際のモジュールではないので、何かをインポートする正しい方法がわかりません。 – Aaron