简体   繁体   English

如何在TypeScript中导出Ramda咖喱函数?

[英]How to export Ramda curried function in TypeScript?

I'm new to TypeScript. 我是TypeScript的新手。 I have some JavaScript code written with Ramda and I want to use it in TypeScript project. 我有一些用Ramda编写的JavaScript代码,我想在TypeScript项目中使用它。

This is a generic sort function in JavaScript: 这是JavaScript中的通用排序函数:

var charOrdAFactoryBase = R.curry(function(sortDir, prepare){
    return function(a, b) {
        a = prepare(a);
        b = prepare(b);
        if(R.isNil(a) && R.isNil(b)) return 0;
        if(R.isNil(a)) return 1;
        if(R.isNil(b)) return -1;
        if (a > b)
            return sortDir === "asc" ? 1 : -1;
        if (a < b)
            return sortDir === "asc" ? -1 : 1;
        return 0;
    };
});

I tried to make: 我试图做:

export function charOrdAFactoryBase;

But TypeScript compiler says: Function implementation is missing or not immediately following the declaration. 但是TypeScript编译器说:函数实现在声明后立即丢失或没有消失。

Is it possible to export Ramda curried function? 是否可以导出Ramda咖喱函数?

charOrdAFactoryBase is being redeclared. 正在重新声明charOrdAFactoryBase

What you want to export here is a name referencing an already defined function. 您要在此处导出的是引用已定义函数的名称。

export { charOrdAFactoryBase }

Reference: 参考:

https://developer.mozilla.org/en/docs/web/javascript/reference/statements/export https://developer.mozilla.org/en/docs/web/javascript/reference/statements/export

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM