HoneyMoose
  • 首页
  • Java
  • Jersey
  • Jira
  • Confluence
  • U.S.
    • USRealEstate
    • USVisaTrack
    • H1B
  • 项目和网站
    • CWIKI.US
    • OSSEZ 社区
    • WIKI.OSSEZ.COM
    • BUG.OSSEZ.COM
    • RSS.OSSEZ.COM
BLOG.OSSEZ.COM
A responsive blog theme focused om user reading experience
  1. Home
  2. Computer Science
  3. This article

NodeJS 导入包的时候出现的 @types 错误导致程序无法运行

2022年05月01日 364Browse 0Like 0Comments

在一次开发 NodeJS 项目的时候,我们希望包的导入是用 import 导入的方式。

但是在具体导入的时候发现是使用 @types 导入的。

 

2021-11-05_16-54-39

 

如果上面的图显示的导入方式,结果结果是导致程序错误无法运行。

问题和原因

尽管我们在包的配置文件中添加了需要导入的包的版本。

"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 从你的包的依赖中删除。

 

2021-11-08_16-23-25

 

这样就能解决我们上面遇到的问题了。

https://www.ossez.com/t/nodejs-types/13801

Tags: None
Last updated:2022年05月01日

Kratos

stay absorbed stay excellent

Like
< Previous
Next >

Comments

Cancel reply

Newest Hotspots Random
Newest Hotspots Random
来看一个 ChatGPT 有关程序员的笑话 IntelliJ IDEA 的 Code Coverage 测试 Okhttp 如何构建一个 Get 的 URL SpringBoot 使用 @ConfigurationProperties 异常 Not registered via @EnableConfigurationProperties Jackson 的 DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES 1月14号的 UA857
说说这 48 小时核酸检测的时间FAA 真的应该换换系统了Java 8 使用 Stream 把 List 转换为 mapPowerShell 中运行 maven 参数无法识别1月14号的 UA857Jackson 的 DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES
Confluence 6 XML 备份失败的常见问题 Docker 文档编译 - 运行页面中的 Javascript Confluence 6 大致的用户规模示例 Maven 编译拷贝资源的时候提示 UTF-8 编码信息 什么是 Druid Discourse 如何配置 GitHub 登录方式
Categories
  • Algorithm(算法)
  • AMQP
  • Angular
  • CI
  • Compile And CI
  • Computer Science
  • Confluence
  • DataBase
  • Gradle
  • H1B
  • Hibernate
  • IDE
  • Java
  • Jersey
  • Jira
  • MariaDB
  • PrestaShop
  • Spring
  • Spring Batch
  • U.S.
  • USRealEstate
  • USVisaTrack
  • 我的小厨

COPYRIGHT © 2020 HoneyMoose. ALL RIGHTS RESERVED.

THEME CWIKIUS.CN MADE BY VTROIS