关于泛型的疑惑

来源:11-2 完成帮助函数

luff丶

2020-12-05

老师,这段代码const store = useStore();意思是useStore这个函数要使用泛型,可是函数里的泛型不是要指定是参数或者返回结果用泛型?这段代码并没有说,那这个泛型绑在谁身上了?

写回答

1回答

张轩

2020-12-06

同学你好 useStore 这个函数使用泛型(当然也可以不使用) 最终是为了将类型推论到 store 上面去的,使用以后 store.state 就可以自动获取传入的泛型的类型了。

其实实现也很简单,看下源代码你就会发现

export function useStore<S = any>(): Store<S>;

export declare class Store<S> {
 ...很多方法
 // 这个时候 state 就获得了我们传入的 S 类型啦
 readonly state: S;
}


0
1
luff丶
非常感谢!
2020-12-06
共1条回复

Vue3 + TS 仿知乎专栏企业级项目

带你完成前后端分离复杂项目,率先掌握 vue3 造轮子技能

3142 学习 · 2313 问题

查看课程

相似问题

关于泛型

回答 1

关于泛型

回答 1

泛型

回答 1

泛型

回答 1