如何禁用webpack dev server自动重载?

Paw*_*ich 26 webpack webpack-dev-server

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

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

webpack-dev-server --open --progress
Run Code Online (Sandbox Code Playgroud)

这是我的dev服务器配置:

devServer: {
    contentBase: 'app',
    port: 9005,
    hot: false,
    inline: false
}
Run Code Online (Sandbox Code Playgroud)

版本:

"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"
Run Code Online (Sandbox Code Playgroud)

使用此设置,webpack dev服务器将打开初始页面,localhost:9005/webpack-dev-server/同时启用自动重新加载(iframe模式).当我设置inlinetrue然后它打开localhost:9005并且自动重新加载仍然打开(inlinemode => websockets).

有没有办法完全禁用自动重新加载?

Igo*_*sow 13

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

config.devServer = {
    hot: false,
    inline: false,
}
Run Code Online (Sandbox Code Playgroud)

  • `npm run watch -- --no-inline --no-hot` 将这些选项传递给 *override* 配置中的内容(通过这个别名到 `webpack-dev-server --config config.js`) (3认同)

spa*_*33z 10

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

  • 与 Webpack 4 配合使用 (2认同)

Ale*_*nae 8

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();
Run Code Online (Sandbox Code Playgroud)


Paw*_*ich 7

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

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