typescript - 是打字稿中输入参数等于`this`上下文的一种方式吗?
问题描述
我有一个关于 vuex 和 typescript 的问题。我想获得严格的类型推断getters
而不是any
. 但现在我不知道,我开始怀疑 typescript@4 是否可以支持这种情况。
如果你不知道 vuex,没关系。这是一个简单的演示案例: typescript play demo
type M<S,G> = {
state: S;
getters: G ;
}
type Getter<S,G> = {
getters: G & {
[K in keyof G]: (this: G, s: S, g: G) => void;
}
}
function register<S, G>(module: M<S, G> & Getter<S, G>) {
}
register({
state: {
name: 'ts',
},
getters: {
fullname(state, getters) {
state.name;
getters.fullname;
return 1;
}
}
})
这个问题是:它是打字稿中推断全名参数(状态,吸气剂)的一种方式吗?
期望结果是:状态类型是 S,getter 类型是 ThisType。
解决方案
推荐阅读
- raspberry-pi - 尝试在 Raspberry Pi 集群上设置多语言环境教堂
- c++ - 从类/结构中声明的枚举类型到在该类/结构中也声明的对等静态方法?
- python - 获取附加到Django中每个对象的前N个标签
- vue.js - 在 Nuxt js 项目 axios 自动编码 url
- java - 从具有列表字段的 Java 对象创建 QueryDSL 谓词的问题
- arrays - C:如何将输入作为未知大小的矩阵
- json - react useState setState 在首次加载时未定义,但在刷新后可以正常工作
- powerbi - Power BI 检查值是否在某个时间之前发生
- c++ - 如何删除从基类继承的纯虚函数?
- mac-catalyst - 移植到 Mac 催化剂时排除“FirebaseAnalytics”吊舱