typescript - 如何允许缺少 .d.ts 类型定义的模块?
问题描述
我正在使用一些不受欢迎的模块,例如Dyo
andjs-sha3
似乎没有任何类型。
我现在并不真正关心第三方库中的类型,我不想花几个小时来输入这些。我主要将它用于服务器以限制我的错误并在开发过程中使故障排除更容易。
我之前有一个Cannot find module X
错误,所以我添加了:"moduleResolution": "node"
在我的 tsconfig.json 文件中。
如何使打字稿不抱怨节点模块缺少类型?
整个错误:
Could not find a declaration file for module 'dyo'. '/node_modules/dyo/dist/dyo.umd.js' implicitly has an 'any' type.
Try `npm install @types/dyo` if it exists or add a new declaration (.d.ts) file containing `declare module 'dyo';` [7016]
我// @ts-nocheck
在网络的某个黑暗地方的评论中发现,但它似乎不起作用。
我可以通过模块关闭它吗?
解决方案
您可以创建.d.ts
允许从模块导入任何内容的虚拟定义 - 导入它会导致dyo
具有any
类型(导入它的确切方式取决于esModuleInterop
编译器设置,以及这些东西是如何从中导出的dyo.umd.js
)。
在项目中的某处创建一个文件
dyo.d.ts
,其中包含一行declare module 'dyo';
在引用该模块的文件中,将此行添加到顶部,并带有适当的
dyo.d.ts
文件路径:/// <reference path='./dyo.d.ts' />
2. 的替代方法是添加dyo.d.ts
到文件编译中包含的文件列表中tsconfig.json
:
"files": [
... other files as necessary ...
"./path/to/dyo.d.ts"
]
推荐阅读
- windows-subsystem-for-linux - 在 WSL2 中安装 v4l2loopback
- overriding - 覆盖 prestashop 类以公开一个受保护的方法
- python - Python 正则表达式 - 从字符串中提取数字并具有正向前瞻
- python-3.x - 根据其他列中的条件创建 BOOL 列
- python - Python - 如何过滤文件列表并仅返回包含特定扩展名的值?
- typescript - 打字稿:listServiceLevelObjectives 给出 UnhandledPromiseRejectionWarning:错误:3 INVALID_ARGUMENT
- javascript - 如何在 js 构造函数上做一个数组
- javascript - 节点列表内容
- ios - 用swift将汉字音译成拉丁语
- php - 如何使用php头函数返回目录