私はフロータイプのタイピングに追加しようとしています。私はlodash/fp
モジュールを使い始めています。なぜなら、それは自分自身にとって最も有用なものだからです。しかし、私はそれを正しくタイプする方法に苦労しています。lodash/fpカドード関数はどのように入力すればよいですか?
簡単な例dropRightWhile
場合:これは、それを入力する私の試みです
declare function dropRightWhile<T>(iteratee: (val: T)=>boolean, data?: Array<T>): Array<T> | (data: Array<T>)=>Array<T>;
。 dropRightWhile
はイテレートを取らなければならず、データを受け取ることができます。データを与えないと、データを受け取る関数を返しますが、データを渡すと配列を返します。
私が作成した型は、厳密に引数の数と戻り型の間の接続を作成しません。私はカリーdropRightWhile
を使用しようとするしかし、私はdropRightWhile
関数を返すことができるので、私はそれを呼び出すことができるだろうと思っただろうが、それは思わエラー
var c = dropRightWhile((x) => x> 0); c([0, 1, 2, 3]);
error: Function cannot be called on array type
を取得します配列の型が途中で取り残されています。
提案がありますか?