如何在TypeScript中使用导出类型?

时间:2019-05-28 07:34:00

标签: typescript

我使用了NPM中的一个库

https://www.npmjs.com/package/yaml

这是他的@ types / yaml

https://www.npmjs.com/package/@types/yaml

在我的源代码中,我确实导入了

import * as yaml from 'yaml';

但我无权访问YAMLError 它在@ types / yaml

中定义
export type YAMLError =
    | YAMLSyntaxError
    | YAMLSemanticError
    | YAMLReferenceError;


https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/yaml/index.d.ts

我可以使用导出类型吗?

1 个答案:

答案 0 :(得分:3)

在当前情况下,您需要使用yaml.YAMLError作为导入的命名空间。

您可以这样做:

import { YAMLError } from 'yaml'

它“应该”自动为您检索正确的类型信息。

根据您的编辑器或IDE,如果您拥有正确的插件(如TypeScript Language Server),它可以为您自动导入。

export type将使您的新type对其余代码可用,并能够将其导入。如果要添加现有类型或基于它的全新模型,例如以下示例:

export type MyYAMLError = YAMLError | null

您可以开始在自己的代码中使用MyYAMLERROR。不确定这是否是您要查找的内容,因此建议您如上所述重做导入。