从返回值推断typescript函数的返回类型
考虑这个例子:从返回值推断typescript函数的返回类型,typescript,Typescript,考虑这个例子: type State={sth:Something}; 类型选择器=(状态:state)=>T; const selector:selector=state=>state.sth; 我希望从返回值自动推断选择器函数的返回类型,并能够访问其属性,但我得到以下错误: 类型“某物”不能分配给类型“T” 是否可以在不明确指定返回类型的情况下执行此操作?选择器是一个通用函数,因此它的任何实现都应该是一个通用函数 您可能希望Selector是一个泛型类型,它恰好是一个函数: type Se
type State={sth:Something};
类型选择器=(状态:state)=>T;
const selector:selector=state=>state.sth;
我希望从返回值自动推断选择器
函数的返回类型,并能够访问其属性,但我得到以下错误:
类型“某物”不能分配给类型“T”
是否可以在不明确指定返回类型的情况下执行此操作?
选择器是一个通用函数,因此它的任何实现都应该是一个通用函数
您可能希望Selector
是一个泛型类型,它恰好是一个函数:
type Selector<T> = (state: State) => T;
const selector: Selector<Something> = state => state.sth;
type Something = { s: string}
type State = { sth: Something };
type Selector<T> = (state: State) => T;
function createSelector<T>(fn: Selector<T>) {
return fn
}
const selector = createSelector(state => state.sth);