当前位置: 首页 > 知识库问答 >
问题:

随机字符串模块的类型定义异常

凌和悦
2023-03-14

我正在尝试为随机字符串编写d.ts。

我有以下代码:

declare module "random-string" {
    export function randomString(opts?: Object): string;
}

我可以导入模块,没有问题:

import randomString = require('random-string');

并调用:

console.log(randomString); // --> [Function: randomString]

但是,无论是否有参数,这都不起作用:

console.log(randomString({length: 10});
console.log(randomString());

我从tsc得到这个错误:

错误TS2088:无法调用类型缺少调用签名的表达式。

我在源代码中查看了随机字符串,并找到了我尝试与之交互的方法的这段代码:

module.exports = function randomString(opts) {
   // Implementation...
};

我设法为CSON模块写了一个d.ts,没问题,但那是导出一个“类”,而不是直接导出一个函数。这很重要吗?

共有1个答案

薛经艺
2023-03-14

你的声明说有一个名为random string的模块,其中有一个名为randomString的函数。。。

因此,您的用法应该是:

console.log(randomString.randomString({ length: 10 }));
console.log(randomString.randomString());

如果模块确实直接提供功能,则应调整定义以执行相同操作:

declare module "random-string" {
    function randomString(opts?: Object): string;

    export = randomString;
}

这将允许你像在你的问题中那样称呼它。

 类似资料:
  • 当我将接口的任何属性设置为可选时,我会在将其成员分配给其他变量时遇到如下错误: 我如何绕过这个错误?

  • 本文向大家介绍C#自定义函数NetxtString生成随机字符串,包括了C#自定义函数NetxtString生成随机字符串的使用技巧和注意事项,需要的朋友参考一下 本文实例展示了C#自定义函数NetxtString实现生成随机字符串的方法,在进行C#项目开发中非常实用!分享给大家供大家参考。 一、生成随机字符串 关键代码如下: 测试代码如下: 测试结果如下图所示: 二、根据指定字符生成随机字符串

  • 问题内容: 如何在Python中创建随机字符串? 我需要先编号然后重复字符,直到完成为止,这就是我创建的 问题答案: 从(例如)小写字符生成字符串: 结果:

  • 我有一张这样的地图 我可以得到分数作为整数以及"NA",所以我映射类型为字符串,但在发布数据到索引我得到数字格式异常。 例如: 如果我将第一个数据发布为整数,后跟“NA”。我得到了这些例外。 检查日志文件时,我发现以下错误: [2016-08-29 15:19:01]elasticlog.警告:响应[{\"错误\":{\"root_cause类型\":\"mapper_parsing_except

  • 我发现这个错误:类型字符串的getText()方法未定义 怎么了? 这是代码: 我在最后2次对齐时得到错误。 以下是JtextArea的代码 以下是完整的代码:

  • 问题内容: 我有阵列中的国家/地区列表,我想从列表中选择一个国家/地区(可能是使用随机的?),但是我自己还没有找到答案… 这是我到目前为止所拥有的: 问题答案: 尝试: