我正在使用Moment.js处理我的TypeScript项目中的日期时间对象。我想定义一个对象类型,该对象类型的键值为Moment
。如何将外部类型导入到全局.d.ts文件中
但是,当我将以下内容添加到全局定义文件(test.d.ts
)时,该文件中的任何接口都不在该项目的任何位置。
import { Moment } from 'moment';
interface Test {
date: Moment;
}
当我尝试使用该接口在.ts
或.tsx
文件我得到这个打字稿错误:
[at-loader] ./src/<examplefilename>.tsx:91:26
TS2304: Cannot find name 'Test'.
无论VSCode的打字稿错误检查,也不TSLint显示的代码的任何问题。
如何从外部模块导入用于全局定义文件的类型?
我会检查tsconfig文件。在编译器选项 - typeroot你应该有@types路径和类型的路径 – kimy82
@ kimy82,我不认为这个问题在那里。我可以在整个项目中导入时间,但我无法将其导入到项目的'.d.ts'定义文件中,以在我的项目中使用'Moment'类型定义全局类型。只要我不尝试导入外部类型,我的'.d.ts'文件的其余部分都可以在没有配置的情况下找到。 – keawade
你的'tsconfig.json'项目中是否包含全局'd.ts'文件? –