NodeJS 导入包的时候出现的 @types 错误导致程序无法运行
2021/11/10 9:10:20
本文主要是介绍NodeJS 导入包的时候出现的 @types 错误导致程序无法运行,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
在一次开发 NodeJS 项目的时候,我们希望包的导入是用 import 导入的方式。
但是在具体导入的时候发现是使用 @types 导入的。
如果上面的图显示的导入方式,结果结果是导致程序错误无法运行。
问题和原因
尽管我们在包的配置文件中添加了需要导入的包的版本。
"bluebird": "^3.5.1",
但是我们发现还是没有正确的使用,还是使用的是 @types 的方式。
@types
经过一些研究,有时候 @types 这个的使用是因为在 JS 世界中有很多的包不是通过 TypeScript 进行开发的,使用是普通的 JS 。
为了让使用 JS 的库能够在 TypeScript 上使用,那么我们在导入的时候需要添加 @types
但是我们的这个问题是,我们并没有添加需要的 @types/bluebird
, 但是这个是从哪里来的呢?
这个时候,我们需要找到这个包导入的依赖了。
在导入这个包所在项目的文件夹中,打开 package.json 这个文件。
在这个文件中也没有找到这个包的依赖,也不是使用types 定义的。
只能从项目中的依赖找原因了。
在这个文件中,我们会看到
"_requiredBy": [ "/@types/request-promise" ],
这个就是让 @types/bluebird
导入的元凶了,因为这个类型是 @types 的,所以我们按照 @types 导入了 bluebird。
但是实际使用的时候,我们的程序使用的是另外的一种导入方式。
因此,针对这个问题,我们最简单的办法就是将 /@types/request-promise
从你的包的依赖中删除。
这样就能解决我们上面遇到的问题了。
https://www.ossez.com/t/nodejs-types/13801
这篇关于NodeJS 导入包的时候出现的 @types 错误导致程序无法运行的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-27Vue2面试真题详解与实战教程
- 2024-12-27Vue3面试真题详解与实战攻略
- 2024-12-27JS大厂面试真题解析与实战指南
- 2024-12-27JS 大厂面试真题详解与实战指南
- 2024-12-27React 大厂面试真题详解及应对策略
- 2024-12-27Vue2 大厂面试真题详解及实战演练
- 2024-12-27Vue3 大厂面试真题详解及实战指南
- 2024-12-27Vue3大厂面试真题详解与实战攻略
- 2024-12-26React入门教程:从零开始搭建你的第一个React应用
- 2024-12-25Vue2入门教程:轻松掌握前端开发基础