我有一个奇怪的问题,在这个问题中,类型记录找不到jszip的类型。
在我的源文件中,我使用这些导入。
import * as fast_csv from 'fast-csv';
import { Response } from 'express';
import fs from 'fs';
import * as JSZip from 'jszip';除了jszip之外,所有的功能都很好:

Error:(9, 24) TS7016: Could not find a declaration file for module 'jszip'. 'ROOT/node_modules/jszip/dist/jszip.min.js' implicitly has an 'any' type.当我查看我的(唯一的) node_modules/@types dir时,所有文件都在那里:

以下是来自package.json的相关条目
"dependencies": {
"@hapi/joi": "^15.0.1",
"fast-csv": "^2.5.0",
"jszip": "^3.2.1"
},
"devDependencies": {
"@types/express": "^4.16.0",
"@types/hapi__joi": "^15.0.1",
"@types/jszip": "^3.1.6",
}注:
jszip时,应该搜索@types/jszip @hapi/joi的类型被称为@types/hapi__joi,它们工作得很好。
"jszip": "^3.2.1"还是"@types/jszip": "^3.1.6",对吗?
知道吗,我错过了什么?
相关链接:
发布于 2019-06-17 17:00:37
更新04.2020
这个问题似乎在jszip 3.3.0中得到了解决:请参阅修正浏览器模块解析#614。
此外,我认为这个问题只是与客户端(角度)构建有关。因为节点有自己的流包
原始
我发现了一个问题:在tsconfig.json中,我们有一个显式的路径定义:
"paths": {
"jszip": ["node_modules/jszip/dist/jszip.min.js"],删除此操作后,生成失败,原因如下:
ERROR in C:/devroot/node_modules/jszip/lib/readable-stream-browser.js
Module not found: Error: Can't resolve 'stream' in 'C:\devroot\node_modules\jszip\lib'解决这个问题的方法是安装stream包(感谢这个问题-评论)。
npm i stream或使用类型时
typedi stream现在这个建筑运作得很好。
注意:也许有更好的方法来解决这个问题--看看这个问题-评论
https://stackoverflow.com/questions/56635317
复制相似问题