打字稿:声明模块导出?

时间:2021-01-12 19:59:35

标签: typescript

如何声明一个或多个 ts 文件导出某些方法?

比如有一个es6文件toyota.ts

export const turnLeft: number = (param1: string, param2: number) => {
  // do it...
}
export const turnRight: number = (param1: string, param2: number) => {
  // do it...
}

第二个 es6 文件 honda.ts

export const turnLeft: number = (param1: string, param2: number) => {
  // do it...
}
export const turnRight: number = (param1: string, param2: number) => {
  // do it...
}

我如何制作一个描述这两个 ts 文件的类型文件。 即声明文件有两个导出,分别称为 turnLeft 和 turnRight。

这样,如果我有第三个文件 nissan.ts 并且它只有 turnLeft,那么当我执行 tsc 时它会告诉我错误?

我试图通过制作一个包含 toyota.tstoyota.d.ts 文件来强制执行 declare。但是当 tsc -w 运行时,它甚至不会在我更改 toyota.d.ts 时重新加载。拥有 toyota.d.ts 什么也没做。所以我什至无法开始检查其中一个 js 文件的导出,更不用说使用相同的声明检查所有 3 个文件了。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

最后,这个时候好像没有办法。

它正在许多未解决的未解决问题中进行讨论。

最后,似乎没有办法声明接口,然后用于对模块进行类型检查以查看其导出的内容。 最接近的方法是在包含所有导出的模块中实现一个类,并使该类实现该接口。