打字稿类型的对象,其键始终是具有一个通用参数的函数?

时间:2019-08-01 01:01:52

标签: typescript generics typescript-typings typescript-generics

这真的很难用英语来描述,所以这就是我想要完成的事情:

const actions = {

  save: (payload: T): T => {
    return payload;
  },

  delete: (payload: T): void => {
    console.log(payload);
  }

}

因此,您可以看到该对象中的两个函数都有一个通用参数T。

我该如何完成?在那里允许使用的actions是什么类型?

1 个答案:

答案 0 :(得分:2)

type Actions<T> = {
  save: (payload: T) => T

  delete: (payload: T) => void
}

const actions: Actions<any> = {

  save: (payload) => {
    return payload;
  },

  delete: (payload) => {
    console.log(payload);
  }

}

TypeScript playground