未明确定义默认导出



我指的是这个类型定义文件:https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/nodemailer/index.d.ts,共有九个导出:typeinterfacefunction各3个。

此文件中没有定义默认导出。然而,我能够做到以下几点:

import NM from "nodemailer";

然后NM可以访问导出的三个功能:createTestAccountcreateTransportgetTestMessageUrl。对于该文件中的其他导出,我必须显式导入,例如:

import { SendMailOptions, Transporter } from "nodemailer";

此类型定义的默认导出在哪里定义?

在同一个项目中,我创建了自己的带有导出的测试模块,但没有将其声明为默认模块。如果我使用默认语法导入,编译器会犹豫。

如果module有任何相关性,我的编译器选项是ES2015。

您的tsconfig文件中必须有allowSyntheticDefaultImports。这允许从没有默认导出的模块进行默认导入

如果没有默认的导出类型脚本,则导入模块,就像您编写了import * as NM from 'nodemailer'一样

最新更新