打字稿给出,“找不到模块'xmlhttprequest'的声明文件。”
Posted
技术标签:
【中文标题】打字稿给出,“找不到模块\'xmlhttprequest\'的声明文件。”【英文标题】:Typescript gives, "Could not find a declaration file for module 'xmlhttprequest'."打字稿给出,“找不到模块'xmlhttprequest'的声明文件。” 【发布时间】:2019-01-07 06:54:23 【问题描述】:使用,
import XMLHttpRequest from 'xmlhttprequest';
在 Node 上使用 tsc
编译时出现以下错误
index.ts|4 col 32 错误| 7016[QF 可用]:找不到模块“
xmlhttprequest
”的声明文件。 '<project>/node_modules/xmlhttprequest/lib/XMLHttpRequest.js
' 隐含了一个 'any' 类型。尝试npm install @types/xmlhttprequest
(如果存在)或添加包含declare module '
xmlhttprequest';
的新声明(.d.ts)文件
但是,那个包好像不存在,
npm install @types/xmlhttprequest
npm ERR! code E404
npm ERR! 404 Not Found: @types/xmlhttprequest@latest
npm ERR! A complete log of this run can be found in:
npm ERR! /home/ecarroll/.npm/_logs/2018-07-31T00_19_20_299Z-debug.log
有没有办法封装这种类型?
【问题讨论】:
【参考方案1】:您可以尝试在命令行中执行npm install @types/xmlhttprequest --save
。
如果它给你错误,那么这意味着 xmlhttprequest 库不支持 TypeScript。
【讨论】:
【参考方案2】:这意味着该库不包含类型定义,并且没有任何人来自DefinitelyTyped 项目编写它们。所以你不能让编译器做任何类型检查。您仍然可以使用该库
import * as xhr from 'xmlhttprequest'
或者,取决于您的编译器版本
const xhr = require('xmlhttprequest')
【讨论】:
这打印同样的东西,./lib/UNGEGN.ts|3 col 22 error| 7016[QF 可用]:找不到模块“xmlhttprequest”的声明文件。 '/home/ecarroll/code/toponym-esque/node_modules/xmlhttprequest/lib/XMLHttpRequest.js' 隐含了一个 'any' 类型。尝试npm install @types/xmlhttprequest
(如果存在)或添加包含declare module 'xmlhttprequest';
的新声明(.d.ts)文件以上是关于打字稿给出,“找不到模块'xmlhttprequest'的声明文件。”的主要内容,如果未能解决你的问题,请参考以下文章