【问题标题】:Typescript wrong inference when using object method使用对象方法时打字稿错误推断
【发布时间】:2022-07-30 09:01:26
【问题描述】:

我正在尝试制作一个创建商店的函数,并尝试了类似这样的签名:

function makeStore<T, A extends { [key: string]: (this: T) => void }>(args: {
  state: () => T;
  actions: A;
}) {}

makeStore({
  // state: ()=>({a: 10}),
  state() {
    return { a: 0 };
  },
  actions: {
    hi() {
      this.a;
    },
  },
});

当我将箭头函数用于状态属性时,这是正确推断的,但在我使用方法样式时却不是。这是为什么呢?

【问题讨论】:

    标签: typescript


    【解决方案1】:

    也许这是一个错误。现在在 typescript 4.7 版中,它们都可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-08
      • 2019-07-13
      • 2020-08-27
      • 1970-01-01
      • 2018-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多