ほとんどの人が逆の問題を抱えていることは知っていますが、実際には自動リロード機能を無効にしたいと思います。
これは私が私のサーバーを実行する方法です:
webpack-dev-server --open --progress
これは私の開発サーバーの設定です:
devServer: {
contentBase: 'app',
port: 9005,
hot: false,
inline: false
}
バージョン:
"webpack": "1.14.0",
"webpack-dev-middleware": "1.9.0",
"webpack-dev-server": "^1.16.2",
"webpack-hot-middleware": "2.13.2",
"webpack-md5-hash": "0.0.5"
このセットアップでは、webpack devサーバーは、初期ページをlocalhost:9005/webpack-dev-server/
として開き、自動リロードをオンにします(iframe
モード)。 inline
をtrue
に設定すると、localhost:9005
が開き、自動リロードはまだ有効です(inline
mode => websockets)。
自動リロードを完全に無効にする方法はありますか?
Webpackクライアントスクリプトはデフォルトでバンドルに追加されます(webpack 2以降)が、CLIコマンドに--no-inline
を追加することで無効にすることができます。
Webpack 2.xおよび3.xの実用的なソリューション
config.devServer = {
hot: false,
inline: false,
}
回避策として、バンドルからwebpackクライアント側スクリプトを除外しました。これにより、自動リロードが発生しなくなるようです。それらのスクリプトをnullローダーにリダイレクトすることでそれを行いました。
{test: /webpack-dev-server\\client/, loader: "null-loader"},
明らかな解決策も見つかりませんでした(webpack-dev-serverバージョン1.16.5)。
部分的な解決策は次のようです:
webpack-dev-server --watch-poll 99999999999
これは自動的には再構築されません。ただし、最初のビルド後もブラウザウィンドウを再読み込みします。
webpack-dev-server
3.xの更新を以下に示します。 config/webpack/development.js
を次のように更新します。
process.env.NODE_ENV = process.env.NODE_ENV || 'development';
const environment = require('./environment');
environment.config.merge({
devServer: {
hot: false,
inline: false,
liveReload: false
}
});
module.exports = environment.toWebpackConfig();