打字稿打字不适用于联合和泛型

时间:2018-11-19 15:17:09

标签: typescript typescript-typings

所以我希望获得someConst.getFilterList的类型。 该函数中的args可以被推断为任意,并且没有强类型。

type SomeObj = { a: string, b: string };

type FlWithGetFilterListSub<T> = {
    origList?: never,
    getFilterList: getFilterFunc<T, ReadonlyArray<T>>,
} | {
    origList: SomeObj[],
    getFilterList: getFilterFunc<T, ReadonlyArray<SomeObj>>,
};

type FlWithGetFilterList<T> = { listProp: Array<T>, } & FlWithGetFilterListSub<T>;

type getFilterFunc<T, K> = (args: { fullList: K, text: string }) => ReadonlyArray<T>;

const someConst: FlWithGetFilterList<string> = {
    listProp: ['Some String Array'],
    getFilterList: (args) => { const { } = args; return [] },
};

任何帮助,都将不胜感激。 谢谢。

0 个答案:

没有答案