express-controllers-set

Set of Express controllers and middlewares

express-middlewares

В этом репозитории будет набор контроллеров для express.js.

  • render
  • redirect
  • stylus
  • clinch

Принцип работы

Принцип работы очень простой: инстанс express-middlewares возвращает набор методов, создающих middlewares для express. Дополнительные параметры middlewares сохраняются в замыкания.

// Render index page
app.get('/', controllers.render('index'));

// Auth user by express.basicAuth. On success create field `req.user`.
app.get('/login', controllers.auth.login(config.get('credentials')), controllers.redirect('/'));

// Return compiled stylus-file.
app.get('/stylesheets/main.css', controllers.stylus('stylus/main.styl', ['nib']));

Вот, как бы это выглядело без контроллеров:

// Render index page
app.get('/', function (req, res) {
  res.render('index');
});


// Return compiled stylus-file.
app.get('/stylesheets/main.css', stylus({
  watch: 'production' !== process.env,
  entry: 'stylus/main.styl',
  use: ['nib']
}));

Лично мне больше нравятся однострочные варианты.