我试图构建我的socket.io代码,它过去构建得很好,但现在我不知道是什么变化导致项目构建出错。显然,TransformStream(node的内置库之一)不能在Typescript中加载
node_modules/engine.io-parser/build/esm/index.d.ts:6:54 - error TS2304: Cannot find name 'TransformStream'.
6 export declare function createPacketEncoderStream(): TransformStream<Packet, any>;
~~~~~~~~~~~~~~~
node_modules/engine.io-parser/build/esm/index.d.ts:7:96 - error TS2304: Cannot find name 'TransformStream'.
7 export declare function createPacketDecoderStream(maxPayload: number, binaryType: BinaryType): TransformStream<Uint8Array, any>;
~~~~~~~~~~~~~~~
字符串
如果我把下面这行放在
node_modules/engine.io-parser/build/esm/index.d.ts:6:54
型
如果我输入它,错误将被修复,但这不是一个正确的方式。
import { TransformStream } from "stream/web";
型
我也尝试了node在“types”tsconfig.json中,但没有帮助
1条答案
按热度按时间mcvgt66p1#
我也遇到过同样的问题。我发现问题出在engine.io-parser@5.2.0及更高版本中所做的更改。
https://github.com/socketio/engine.io-parser/compare/5.1.0...5.2.0
似乎他们在那里引入了TransformStream。现在我已经回到了固定的socket.io,并将分辨率设置为engine.iowww.example.com@6.5.1
字符串