NPM包没有类型声明

7

我正在将一个小的express api转换为使用TypeScript,但是一些包没有@types/,所以当我导入它们时会出现TS2307错误。

有什么方法可以解决这个错误吗?或者根据包的复杂性自己定义类型。一个例子是express-bearer-token(在此处找到)


你可以使用 require("express-bearer-token"),这将基本上绕过 TypeScript 对该包的安全性检查,或者自己创建类型并在 DefinitelyTyped 上发布它们。 - drinchev
2个回答

20

快速的方法是创建一个globals.d.ts文件,然后添加以下代码:

declare module "express-bearer-token";

这将把express-bearer-token作为没有类型定义的JS模块处理。如果您希望,可以从这里了解更多信息

从那里开始,您可以自己添加更多的类型定义。在这里找到一些编写自己的类型定义的信息


1
它可以了,我把文件放到src目录中。 - Sahin

1

对于daisyui

在根目录中创建global.d.ts文件

添加以下代码行

declare module "daisyui";

注意:如果服务器已经在运行,请停止服务器并重新启动。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接