【发布时间】:2017-12-02 02:30:21
【问题描述】:
我正在尝试为format-duration 创建一个 Typescript 定义文件:
module.exports = (ms) => {
let { days, hours, minutes, seconds } = parseMs(ms)
seconds = addZero(seconds)
if (days) return `${days}:${addZero(hours)}:${addZero(minutes)}:${seconds}`
if (hours) return `${hours}:${addZero(minutes)}:${seconds}`
return `${minutes}:${seconds}`
}
我尝试了几个不同的声明文件:
export default function (ms: number): string;
export default function formatDuration(ms: number): string;
export function formatDuration(ms: number): string;
虽然我在运行应用程序时确实从他们那里获得了正确的类型信息,但我得到了一个错误:
import formatDuration from "format-duration";
const formatted = formatDuration(123456);
Exception has occurred: TypeError
TypeError: format_duration_1.default is not a function
如何正确定义此类 javascript 库的类型?
【问题讨论】:
-
哪一个导出语句给你一半的输出?
-
不知道能不能输入无名导出?在其他情况下,您应该能够使用
declare formatDuration:(ms:number):string
标签: typescript definitelytyped