0
我有以下明確的控制器: 使用promise.coroutine創建快速控制器的最佳方式是什麼?
var Promise = require('bluebird');
var co = Promise.coroutine;
class MainController {
constructor(env) {
this.env = env;
}
index() {
var self = this;
return co(function*(req, res, next) {
var trips = yield self.env.repo.trips.getTrips();
var viewModel = new ViewModelBase(req, {layout: 'layout', trips: trips});
res.render('index', viewModel);
});
}
}
我使用這個控制方式如下:
var mainController = new MainController(this.env);
router.get('/', mainController.index());
有沒有辦法讓這個代碼更加清晰? 我可以避免var self = this;在每個協同例程之前? 從哪裏可以找到關於express 4中使用es6的最佳實踐指南?