2

我们有使用 grunt 编写的 lecasy 应用程序。它还使用了这个东西https://github.com/gruntjs/grunt-contrib-connect这使我们可以使用中间件数组,以便我们现在可以像这样添加或取消转换中间件:

grunt.initConfig({
  connect: {
    server: {
      options: {
        middleware: function(connect, options, middlewares) {
          // inject a custom middleware into the array of default middlewares
          middlewares.unshift(function(req, res, next) {
            if (req.url !== '/hello/world') return next();

            res.end('Hello, world from port #' + options.port + '!');
          });

          return middlewares;
        },
      },
    },
  },
});

现在我们正在将我们的项目迁移到 webpack 并尝试使用 webpack 实现相同的行为:

var server = new WebpackDevServer(webpack(config), {
    //publicPath: config.output.publicPath,

    hot: true,
    port: 32728,
    // historyApiFallback: true,
    setup: function(app) {
        console.dir(app);
      app.use(function(req, res, next) {
          // how to access array of middlewares here ?
      } 
    },
    stats: {
      colors: true
    }
  });
  server.listen(32728);
4

0 回答 0