从已安装的@types导入?

2023-12-09

我已经安装了md5(也尝试过blueimp-md5)包含相应类型的包,如下所示:

nmp install --save md5 @types/md5

nmp install --save blueimp-md5 @types/blueimp-md5

当我尝试像这样导入它时:

import { md5 } from '../../../node_modules/md5'

我收到错误:Module <path> was resolved to <path>/md5.js, but '--allowJs' is not set.

Error in VS Code

这让我觉得安装了@types/md5打字根本就没有被发现。 在 tsconfig.json 我有:

"typeRoots": [
  "../node_modules/@types"
]

所以我认为它应该检测来自node_modules/@types自动文件夹,但显然没有。与完全相同的事情blueimp-md5包裹。这md5文件夹存在于node_modules/@types文件夹,所以一切都已就位,但仍然无法工作。

Visual Studio Code、TypeScript 2、Angular 2 项目。

我究竟做错了什么?

编辑:这是 @types/md5/index.d.ts 文件的内容:

/// <reference types="node" />

declare function main(message: string | Buffer): string;
export = main;

您不需要指定里面的路径node_modules, 它应该是:

import * as md5 from "md5";

编译器将在中查找实际的模块node_modules,并将在中查找定义文件node_modules/@types.

有一个关于它的很长的文档页面:模块分辨率


Edit

那是因为md5模块正在导出,因为它是这样做的:

declare function main(message: string | Buffer): string;
export = main;

这个案例是文档中涵盖:

export = 语法指定从以下位置导出的单个对象 该模块。这可以是类、接口、命名空间、函数或 枚举。

使用export=导入模块时,TypeScript特定的导入let = require("module") 必须用于导入模块。

在你的情况下应该是:

import md5 = require("md5");

2nd edit

如果你的目标是es6那么你需要做:

const md5 = require("md5");

(or let or var当然)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从已安装的@types导入? 的相关文章

随机推荐

  • 如何使用 Google Cloud Shell 安排 shell 脚本?

    我有一个存储在 GCS 中的 sh 文件 我正在尝试通过 google cloud shell 安排 sh 文件 我可以使用运行相同的文件gsutil cat gs miptestauto baby sh sh命令但无法安排它 以下是我用于
  • SMTP GMAIL 连接

    我无法使用 PHPMailer 连接到 SMTP GMAIL 这是错误 2015 年 6 月 25 日 22 54PM 出错 stream socket client 无法 连接到 smtp gmail com 587 连接超时 home
  • 获取有关 Swift 中进程的信息

    我正在尝试获取有关 Swift 中流程的一些数据 我使用这段代码作为起点 pid t pid 10000 rusage info current rusage if proc pid rusage pid RUSAGE INFO CURRE
  • Angular 没有给出复选框的当前状态

    我已经开始构建一个 ToDo 示例应用程序 我面临一个奇怪的问题 下面是待办事项列表的 HTML 代码 在该列表中 我为复选框设置 ngModel 并触发更改事件 监听变化的代码 我只将当前状态打印到控制台 看下图 您可以看到复选框的当前状
  • Linux 上的 pthreads 是如何被调度程序看到的

    我有一个关于 Linux 上 pthread 实现的问题 假设一个进程有5个线程 现在调度程序如何看到这些线程 或根本看不到 例如当调度程序被调用时 它是否只调度主进程 然后主进程有责任在每个线程之间进行调度 或者是另一种方式 调度程序调度
  • 为什么必须限定重载模板基类方法的范围?

    我似乎无法在不将范围限定到基类的情况下调用基类的方法 这似乎是因为我重载了该方法 如果我不重载该方法 那么编译器不会抱怨 这是我想做的一个例子 struct BaseClass template
  • 是否可以在 go 插件和应用程序之间共享自定义数据类型?

    我知道可以查找导出的 go plugin 符号并将它们键入到界面 但是 我想知道是否有一种方法可以将它们键入到结构中 例如 有办法做到吗 例如 插件 go package main type Person struct Name strin
  • 如何检查Android设备是HDPI屏幕还是MDPI屏幕?

    我想检查这个以通过互联网获取不同的图像 怎么做 density getResources getDisplayMetrics density return 0 75 if it s LDPI return 1 0 if it s MDPI
  • 在android中将文件写入sdcard

    我想在 SD 卡上创建一个文件 在这里我可以创建文件并将其读 写到应用程序中 但我想要的是 文件应该保存在 SD 卡的特定文件夹中 我怎样才能做到这一点使用FileOutputStream create file public void c
  • UITableViewCell 子类布局在禁用自动布局的故事板中混乱

    我在故事板中创建了一个带有原型单元的表格视图 并且在 Xcode 5 中未选中 使用自动布局 cells是UITableViewCell的子类 主要是添加IBOutlets 里面没有任何代码 结果是布局混乱 我尝试更改自动调整大小蒙版 但没
  • 证书签名请求中手动创建的签名与 openssl req 生成的签名不匹配

    使用以下命令创建证书签名请求 openssl genrsa out test key 2048 openssl req new key test key subj CN foo out foo csr 在提供的步骤的帮助下 marc我从中提
  • 从 HTML PHP 联系表单中删除错误字符

    PHP 新手 但取得新进展 我有一个联系表单 在用户提交后会发送电子邮件 现在我想通过删除坏字符或任何可能破坏电子邮件的内容来改进此表单 该电子邮件将由我阅读 因此从技术上讲我可以浏览所有垃圾邮件 但我不想这样做 我想要一封干净的电子邮件用
  • PHP OOP:每个参数类型都有唯一的方法?

    我正在写一些自制的 ORM 学术兴趣 我试图将 TDD 概念作为一项培训练习 并且作为该练习的一部分 我在开发课程时为 API 编写文档 举个例子 我正在研究一个经典的 getCollection 类型映射器类 我希望它能够检索特定用户的资
  • 将字节数组转换为 Angular6 中的图像

    我已从服务器发送字节数组中的图像文件 现在我必须将其转换为jpeg文件并将其显示在网页中 Code app get getPhoto hash function req res console log req params hash inv
  • 将 std::string 转换为 std::chrono::duration

    我的目标是转换一张单曲string以形式 H M S to chrono duration in C 11 举个例子 为了转换 00 15 00 我想出了以下间接解决方案 我计算了两个时间点 1 00 15 00 和 2 00 00 00
  • querySelectorAll 检测输入中的值

    我有多个输入 我想根据用户是否在其中输入值来进行区分
  • 将数据插入 netezza 中的外部表时出现错误 [08S01] 通信链路失败

    我正在尝试将数据从文本文件加载到外部表中Netezza 这是我的命令 INSERT INTO XTABLE DHARMESH SELECT FROM EXTERNAL C Dhams mergeresult txt USING delimi
  • 圆 - 线相交无法正常工作?

    我在之后写了这个圆线相交检测http mathworld wolfram com Circle LineIntersection html 但看起来像是这样 或者我错过了一些东西 public static bool Intersect V
  • 将 C# 语句体 lambda 转换为 VB

    VS8 中的 VB 似乎不支持 转换带有语句主体的 lambda 表达式 我在 C 应用程序中使用它们 但现在必须将其转换为 VB 我正在动态创建一大堆控件 并且我希望能够动态地为它们提供事件处理程序 这样我就可以从数据库构建动态用户界面
  • 从已安装的@types导入?

    我已经安装了md5 也尝试过blueimp md5 包含相应类型的包 如下所示 nmp install save md5 types md5 nmp install save blueimp md5 types blueimp md5 当我