javascript - [WDS] Disconnected! 一直重複出現。
三叔
三叔 2017-07-05 10:43:17
0
2
2059

題主最近剛接觸webpack,今天嘗試下配置webpack的HMR,
一直在chrome的控制台重複出現[WDS] Disconnected!的警告,截圖如下:

google了很多方法找不到原因,所以才來請教大家。
附上程式碼結構:

#package.json

#
{ "name": "vue-timer", "version": "1.0.0", "description": "a timer based on vue", "main": "main.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "webpack-dev-server --hot --inline" }, "author": "Albert", "license": "ISC", "dependencies": { "vue": "^2.3.3" }, "devDependencies": { "babel-core": "^6.24.1", "babel-loader": "^7.0.0", "babel-preset-env": "^1.4.0", "css-loader": "^0.28.1", "eslint": "^3.19.0", "eslint-config-airbnb-base": "^11.2.0", "eslint-plugin-import": "^2.2.0", "html-webpack-plugin": "^2.28.0", "style-loader": "^0.17.0", "stylus": "^0.54.5", "stylus-loader": "^3.0.1", "webpack": "^2.5.1", "webpack-dev-server": "^2.4.5" } }

webpack.config.js

const path = require('path'); const webpack = require('webpack'); const HtmlWebpackPlugin = require('html-webpack-plugin'); module.exports = { devtool: 'eval-source-map', entry: path.resolve(__dirname, 'src/app/main.js'), output: { path: path.resolve(__dirname, 'src/public'), filename: 'bundle.js', publicPath: '/', }, module: { rules: [ { test: /\.js$/, exclude: /node_modules/, loader: 'babel-loader', }, { test: /\.css$/, loader: 'style-loader!css-loader', }, { test: /\.styl$/, loader: 'stylus-loader', }, ], }, plugins: [ new HtmlWebpackPlugin({ template: path.resolve(__dirname, 'src/app/index.html'), hash: true, }), new webpack.HotModuleReplacementPlugin(), new webpack.NamedModulesPlugin(), ], resolve: { alias: { vue$: 'vue/dist/vue.common.js', }, }, devServer: { historyApiFallback: true, publicPath: '/', }, };

奇怪的是在IE11裡我就沒看到這種警告,chrome裡面就一直有,版本是58.0.3029.110

三叔
三叔

全部回覆 (2)
洪涛

出現問題的原因還是沒找到,但hot reload問題自己解決了。
只需要在入口JS加上以下程式碼就可以了:

if (module.hot) { module.hot.accept(); }
    巴扎黑

    Webpack 的 HMR 功能,是透過 WebSocket 實現的推送 JSON Patch,同時需要第三方程式庫支援。

    IE11 似乎不支援 WebSocket 因此沒有這樣的警告。 Chrome 下你使用 Vue 出現這個問題,原因應該在於你沒有引進 Vue 的 HMR 插件,也就是你需要再安裝一個vue-hot-reload-api

    具體解決方案可以參考我寫的一篇部落格文章:http://ewind.us/2017/webpack-...

      最新下載
      更多>
      網站特效
      網站源碼
      網站素材
      前端模板
      關於我們 免責聲明 Sitemap
      PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!