在Typescript中声明Ramda组合/管道函数的类型

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

我目前正在尝试将Ramda与Typescript一起使用,但我找不到任何关于为管道(或组合)函数创建的函数表达式声明类型的示例,下面是我的代码:

interface VersionObject {
    major: number;
    minor: number;
    patch: number;
}

const parseVersionString = pipe(
    split('.'),
    map(unless(isNaN, parseInt)), // btw, ts complain about this parseInt
    zip(['major', 'minor', 'patch']),
    fromPairs
);

我想要做的是宣布parseVersionString收到string并返回VersionObject,我怎么能这样做?

javascript typescript ramda.js
1个回答
3
投票

两种语法变体是等效的:

const parseVersionString: (s: string) => VersionObject = pipe(

const parseVersionString: { (s: string): VersionObject } = pipe(
© www.soinside.com 2019 - 2024. All rights reserved.