如何禁用webpack dev服务器自动重新加载?

时间:2017-01-23 00:29:36

标签: webpack webpack-dev-server

我知道大多数人都有相反的问题,但实际上我想禁用自动重新加载功能。

这就是我运行服务器的方式:

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模式=> websockets)。

有没有办法完全禁用自动重装?

5 个答案:

答案 0 :(得分:9)

默认情况下,webpack客户端脚本会添加到您的包中(自webpack 2起),但您可以通过将--no-inline添加到CLI命令来禁用它们。

答案 1 :(得分:8)

webpack 2.x和3.x的工作解决方案

config.devServer = {
    hot: false,
    inline: false,
}

答案 2 :(得分:7)

作为一种解决方法,我从捆绑包中排除了webpack客户端脚本。这似乎阻止了自动重载的发生。我通过将这些脚本重定向到空加载器来实现这一点。

{test: /webpack-dev-server\\client/, loader: "null-loader"},

答案 3 :(得分:2)

也没有找到明显的解决方案(webpack-dev-server version 1.16.5)。

部分解决方案似乎是:

webpack-dev-server --watch-poll 99999999999

这不会自动重建。但是在初始构建之后它仍然会重新加载浏览器窗口。

答案 4 :(得分:0)

这是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();