请问express这段源码是什么意思,特别是这个app的hanlde方法init哪里来的恩
发布于 9 年前 作者 HirayClay 4502 次浏览 最后一次编辑是 8 年前 来自 问答
var EventEmitter = require('events').EventEmitter;
var mixin = require('merge-descriptors');
var proto = require('./application');
var Route = require('./router/route');
var Router = require('./router');
var req = require('./request');
var res = require('./response');

/**
 * Expose `createApplication()`.
 */

exports = module.exports = createApplication;

/**
 * Create an express application.
 *
 * @return {Function}
 * @api public
 */

function createApplication() {
  var app = function(req, res, next) {
    app.handle(req, res, next);
  };

  mixin(app, EventEmitter.prototype, false);
  mixin(app, proto, false);

  app.request = { __proto__: req, app: app };
  app.response = { __proto__: res, app: app };
  app.init();
  return app;
}
2 回复

mixin(app, proto, false);

谢谢你,虽然很简洁,懂了

回到顶部