error de importación de socket.io-client@0.9.7 con typescript y webpack2
ERROR in ./~/socket.io-client/bin/builder.js
Module not found: Error: Can't resolve 'fs' in 'E:\work\brickman2\node_modules\socket.io-client\bin'
@ ./~/socket.io-client/bin/builder.js 11:9-22
@ ./~/socket.io-client/lib/io.js
@ ./src/services/pusher.ts
@ multi main
ERROR in ./~/xmlhttprequest/lib/XMLHttpRequest.js
Module not found: Error: Can't resolve 'fs' in 'E:\work\brickman2\node_modules\xmlhttprequest\lib'
@ ./~/xmlhttprequest/lib/XMLHttpRequest.js 16:9-22
@ ./~/socket.io-client/lib/util.js
@ ./~/socket.io-client/lib/io.js
@ ./src/services/pusher.ts
@ multi main
ERROR in ./~/xmlhttprequest/lib/XMLHttpRequest.js
Module not found: Error: Can't resolve 'child_process' in 'E:\work\brickman2\node_modules\xmlhttprequest\lib'
@ ./~/xmlhttprequest/lib/XMLHttpRequest.js 15:12-36
@ ./~/socket.io-client/lib/util.js
@ ./~/socket.io-client/lib/io.js
@ ./src/services/pusher.ts
@ multi main
He buscado en Google y en los problemas de GitHub, pero ninguno me funciona.
[email es una versión antigua, pero no se puede actualizar. porque la versión de socket.io en el servidor es 0.9.7 y no se puede cambiar. si actualizo, el cliente no se conectará al servidor.
Respuesta #1
Me enfrenté al mismo problema y he encontrado la siguiente solución: reemplazar la necesidad de socket-io.client por la versión empaquetada de este.
versión ES5
//var io = require('socket.io-client');
var io = require('socket.io-client/dist/socket.io.js'); //worked solution
versión ES6
//import io from 'socket.io-client';
import io from 'socket.io-client/dist/socket.io.js'; //worked solution
