gulp和webpack-dev-server,收到错误TypeError:this.sockWrite不是函数

esk*_*ool 2 gulp webpack webpack-dev-server

我正在尝试将webpack-dev-server与浏览器同步集成,使用代理选项和gulp作为任务主机...收到此错误

TypeError: this.sockWrite is not a function
  at /.../node_modules/webpack-dev-server/lib/Server.js:29:8
  at Compiler.applyPlugins (/.../node_modules/tapable/lib/Tapable.js:26:37)
  at Compiler.compile (/.../node_modules/webpack/lib/Compiler.js:390:7)
  at Watching.<anonymous> (/.../node_modules/webpack/lib/Compiler.js:46:17)
  at Compiler.next (/.../node_modules/tapable/lib/Tapable.js:67:11)
  at Compiler.invalidAsyncPlugin (/.../node_modules/webpack-dev-middleware/middleware.js:80:3)
  at Compiler.applyPluginsAsync (/.../node_modules/tapable/lib/Tapable.js:71:13)
  at Watching._go (/.../node_modules/webpack/lib/Compiler.js:44:16)
  at Watching.<anonymous> (/.../node_modules/webpack/lib/Compiler.js:36:8)
  at Compiler.readRecords (/.../node_modules/webpack/lib/Compiler.js:302:10)
  at new Watching (/.../node_modules/webpack/lib/Compiler.js:33:16)
  at Compiler.watch (/.../node_modules/webpack/lib/Compiler.js:161:17)
  at module.exports (/.../node_modules/webpack-dev-middleware/middle
Run Code Online (Sandbox Code Playgroud)

配置文件的相关部分附在下面:

gulpfile.js

var webpack = require('webpack')

webpack_dev_server(webpack(webpack_config), {
    hot: true,
    publicPath: webpack_config.output.path,
    stats: {
      color: true
    }
  }).listen(8080, 'localhost', function(err) {
    if (err) {
      throw plugins.util.PluginError('webpack-dev-server', err);
    }
  });
Run Code Online (Sandbox Code Playgroud)

和webpack.config

module.exports = {
  cache: true,
  debug: true,
  devtool: 'source-map',
  extensions: ['', 'js', '.json', '.coffee'],
  entry: './www/static/js/entry.js',
  output: {
    path: path.join(__dirname, '/www/static/js'),
    filename: 'bundle.js'
  },
  watch: true
};
Run Code Online (Sandbox Code Playgroud)

小智 6

尝试在webpack_dev_server前添加new.如果您不新建它,则此句柄将设置为全局句柄而不是新对象