実際に何が起こっているのですか?
使用の公式例に従う:
import io from 'socket.io-client';
JSアプリでは、IE11のサイトが壊れます。
壊れているということは、socket-io機能が機能しないという意味ではありませんが、エラー報告などを含むWebアプリのバンドル全体の読み込みが壊れていることを意味します。IE11でテストする人はいないため、おそらく誰もこのバグに気づいていません。
Webアプリにimport io from 'socket.io-client'
を追加し、IE11でテストするだけです。
何が期待されますか?
IE11はバンドルをロードする必要があります
これが発生する理由は、package.jsonの「main」値がバンドルされたdistフォルダーではなく、バンドルされていないソースコードを指定しているため、ソースコードがバンドルされているためです。 おそらく一部のバンドラーもインポートされたモジュールを処理しますが、私のバージョンのWebpackは処理せず、ユーザーのソースコードのみを処理します。
解決策は非常に簡単で、distファイルの1つを「メイン」値として指定します。
回避策として、次の行を使用しています。
import io from 'socket.io-client/dist/socket.io.slim.js'
これと同じ問題があります。 回避策は私のために働きます:+1:
良い!
回避策は私にも有効です、ありがとう!
それは私にもうまくいきます、グッドジョブ。 ありがとう@hyperknot !!
他の人が知っているように、ここではコンソールにあります:
debug
依存関係は3.1.0
に戻されましたが、これはトランスパイルする必要はありません。 2.3.1でリリースされました。
デバッグ依存関係への呼び出しを削除するために、 webpack-remove-debugプラグインを使用することもできることに注意してください(デバッグありとなしでビルドを提供する適切な方法が見つかるまで)。
最も参考になるコメント
回避策は私にも有効です、ありがとう!