我正在使用TypeScript进行服务器端项目。我在ooo.d.ts中定义了一些类型。然后我paths
进去了tsconfig.json
。但是当我尝试导入定义的类型时,它会显示错误,Module '"../../@types/express-custom-types"' has no exported member 'CustomError'.
项目结构如下。
├── src
│ └── routes
│ └── errorHandlers.ts
├── tsconfig.json
└── @types
└── express-custom-types
└── index.d.ts
我如下定义类型index.d.ts
。
declare module "express-custom-types" {
export type ErrorBody = { type: string; status: number; message: string };
}
我在tsconfig.json中定义了别名
"compilerOptions": {
...(omit)...
"baseUrl": "./",
"paths": {
"*": ["*"],
"@custom-types/*": ["@types/*"],
},
并这样输入类型errorHandlers.ts
。
import { ErrorBody } from "@custom-types/express-custom-types";
但是显示错误 Module '"../../@types/express-custom-types"' has no exported member 'ErrorBody'.
我不知道该怎么办..
declare module ...
可以用来添加或扩充某些外部模块的声明(通常是通过package.json
“ build”安装或生成的)。
但是这里不是这种情况,文件/模块是项目的一部分,您只需删除declare module "express-custom-types"
包装器即可。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句