2

webpack-dev-server.js ファイルを挿入したいと思います。
ただし、ドキュメントによると、これは手動で行う必要があり、完全な URL のみを使用する必要があります。

から: http://webpack.github.io/docs/webpack-dev-server.html#api

[...] WebpackDevServer API にはインライン モードがないことに注意してください。 <script src="http://localhost:8080/webpack-dev-server.js"></script> 手動で HTML ページに挿入する必要があります。

から: http://webpack.github.io/docs/webpack-dev-server.html#hot-mode

<!-- It is important that you point to the full url -->
<script src="http://localhost:8080/webpack-dev-server.js"></script>

ドキュメントからのこれらの2つのポイントの理由は何ですか?
のようなスクリプトタグを挿入するのが良い考えではないのはなぜ<script src="/webpack-dev-server.js"></script>ですか?


github の問題も開いています: https://github.com/webpack/webpack/issues/1285

4

2 に答える 2

5

キーは--inlineにあると思います。で設定できますdevServer.inline: truewebpack-dev-server/client最近、エントリが自動的に挿入されることを知りました。実際、それをエントリに追加して を使用する--inlineと、スクリプトが重複してしまいます。

webpack/hot/only-dev-serverinline が設定されている場合は、エントリだけに設定する必要があります。

于 2015-07-23T15:20:24.933 に答える
2

webpack dev サーバー クライアント スクリプトは、接続先のサーバーのアドレスを独自のスクリプト タグのsrc属性から取得しますhttp://localhost:8080/

エントリ リストにクライアント スクリプトを追加することで、クライアント スクリプトをバンドルに直接含めることができることに注意してください。

module.exports = {
  entry: [
    'webpack-dev-server/client?http://localhost:8080',
    'webpack/hot/only-dev-server',
    './src/index'
  ],
  output: {
    filename: 'bundle.js',
  },
  plugins: [
    new webpack.HotModuleReplacementPlugin(),
  ],
};

その場合、webpack-dev-server/client/index.jsスクリプト (開発/webpack-dev-server.jsサーバーから提供されるスクリプトに対応する) は、そのリソース クエリを接続先のサーバー アドレスとして使用します。

の関連するコード スニペットも参照してくださいwebpack-dev-server/client/index.js

于 2015-07-22T10:05:57.123 に答える