Angular 6 中的 socket.io-stream 导入问题

geo*_*eux 5 node.js socket.io nodejs-stream angular angular6

我正在使用npm install socket.io-stream\n 我在我的角度组件上实现socket.io-stream如下所示:

\n\n
import * as io from 'socket.io-client';\nimport * as ss from 'socket.io-stream';\n
Run Code Online (Sandbox Code Playgroud)\n\n

我只想创建一个像这样的双工流:

\n\n
stream=ss.createStream();\n
Run Code Online (Sandbox Code Playgroud)\n\n

当我运行时出现此错误ng build

\n\n
ERROR in ./node_modules/socket.io-stream/lib/iostream.js\nModule not found: Error: Can't resolve 'stream' in ' \n'C:\\Users\\geoffroy\\Documents\\Mines Al\xc3\xa8s\\2A\\Stage\\WebService based \nGUI\\WebApp\\node_modules\\socket.io-stream\\lib'\nERROR in ./node_modules/socket.io-stream/lib/blob-read-stream.js\nModule not found: Error: Can't resolve 'stream' in \n'C:\\Users\\geoffroy\\Documents\\Mines Al\xc3\xa8s\\2A\\Stage\\WebService based \nGUI\\WebApp\\node_modules\\socket.io-stream\\lib'\n
Run Code Online (Sandbox Code Playgroud)\n\n

我不明白,因为在我的 server.js 上它似乎有效..

\n\n

我尝试运行该命令npm install stream,但没有出现错误ng build。但是当我启动我的应用程序时,我的浏览器控制台中出现了一个新错误:

\n\n
inherits_browser.js:5 Uncaught TypeError: Cannot read property 'prototype' of undefined\nat Object.inherits (inherits_browser.js:5)\nat Object../node_modules/socket.io-stream/lib/iostream.js (iostream.js:10)\nat __webpack_require__ (bootstrap:76)\nat Object../node_modules/socket.io-stream/lib/socket.js (socket.js:4)\nat __webpack_require__ (bootstrap:76)\nat Object../node_modules/socket.io-stream/lib/index.js (index.js:1)\nat __webpack_require__ (bootstrap:76)\nat Object../node_modules/socket.io-stream/index.js (index.js:2)\nat __webpack_require__ (bootstrap:76)\n
Run Code Online (Sandbox Code Playgroud)\n\n

感谢您的帮助

\n

小智 1

只需在 polyfills.ts 中添加这一行

// Add global to window, assigning the value of window itself. (window as any).global = window;