webpack-hot-middleware报错app.use() requires a generator function

在koa 中使用 webpack-hot-middleware 时报错 app.use() requires a generator function

代码如下:

'use strict'
const koa = require('koa')
const webpack = require('webpack')
const webpackDevMiddleware = require('koa-webpack-dev-middleware')
const webpackHotMiddleware = require('webpack-hot-middleware')

let webpackConfig = require('../fe.config.js')
let app = koa()
let compiler = webpack(webpackConfig)

app.use(webpackDevMiddleware(compiler, {
    noInfo: false,
    publicPath: webpackConfig.output.publicPath,
    stats: {
        colors: true
    }
}))
app.use(webpackHotMiddleware(compiler));

文档好像也是这样的,不知道为啥我这里就不行,求大神赐教

阅读 4.5k
1 个回答

首先,官网文档可没像你说的那样写,人家是这个样子的

Image

这里重点要搞清楚koa里中间件的实现基于generator,这点和express非常不一样,如果完全不懂generator,那用koa干嘛呢?!

如果不想官网那么写,就像@walle2 说的,用koa-webpack-hot-middleware

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进