用于简单功能组合的TypeScript类型推断

问题描述 投票:0回答:1

我在我认为应该相对简单的事情上遇到了困难。在尝试做几个函数的简单组合时,我无法理解类型。有没有一种方法可以告诉TS找出类型推断而不必显式放置内容?

import { pipe, map } from 'ramda'

type TODO = unkown

export const mapP = (xf: TODO) => (data: TODO) =>
  pipe(
    map(xf),
    x => Promise.all(x),
  )(data)

我真的只是想让map规定函数的类型,而不必重新键入它们。预先感谢!

typescript functional-programming typescript-typings ramda.js
1个回答
2
投票
import { pipe, map } from 'ramda'

export const mapP = <T,R>(xf: (value:T) => Promise<R>|R) => (data: T[]): Promise<R[]> =>
  pipe(
    map(xf),
    x => Promise.all(x),
  )(data)

这需要任何说明吗?

© www.soinside.com 2019 - 2024. All rights reserved.