index.js 804 Bytes
/**
 * sub app
 * @author: Bi Kai<kai.bi@yoho.cn>
 * @date: 2016/05/09
 */

const express = require('express');
const path = require('path');
const hbs = require('express-handlebars');

const app = express();

// set view engine
const doraemon = path.join(__dirname, '../../doraemon/views'); // parent view root

app.on('mount', function(parent) {
    delete parent.locals.settings; // 不继承父 App 的设置
    Object.assign(app.locals, parent.locals);
});

app.set('views', path.join(__dirname, 'views/action'));
app.engine('.hbs', hbs({
    extname: '.hbs',
    defaultLayout: 'layout',
    layoutsDir: doraemon,
    partialsDir: [path.join(__dirname, 'views/partial'), `${doraemon}/partial`],
    helpers: global.yoho.helpers
}));

// router
app.use(require('./router'));

module.exports = app;