2016-05-01 5 views
0

Есть ли способ, чтобы ваш HTML-выход, полученный из шаблона Jade, был украшен? Что-то похожее на Express's app.locals.pretty = true;? Я использую koa-router и koa-views, если это уместно.Довольно печатать HTML-вывод с Koa?

server.js

const koa = require('koa'); 
const views = require('koa-views'); 
const serve = require('koa-static'); 
const router = require('./routes'); 

const app = koa(); 

app.use(serve(`${__dirname}/public`)); 
app.use(views(`${__dirname}/views`, { extension: 'jade' })); 
app.use(router.routes()); 

app.listen(3000,() => { 
    console.log('Server listening at http://localhost:3000'); 
}); 

маршруты/index.js

const router = require('koa-router')(); 

router.get('/', function *() { 
    yield this.render('index'); 
}); 

module.exports = router; 

просмотров/index.jade

html 
    head 
    title Hello 
    meta(charset='utf-8') 
    meta(name='viewport', content='width=device-width, initial-scale=1.0') 
    link(type='text/css', rel='stylesheet', href='css/style.css') 

    body 
    h1 Hi 

ответ

0

вы с ульд попробовать:

app.use(views(`${__dirname}/views`, { extension: 'jade', pretty:true})); 

, что следует сделать трюк ... с другой стороны, я использую КоА-нефрит вместо КоА-представления. Мой текущий код выглядит следующим образом:

var Jade = require('koa-jade'); 

var jade = new Jade({ 
    viewPath: path.resolve(__dirname,"jade"), 
    debug: true, 
    pretty: true, 
    compileDebug: true, 
    basedir: path.resolve(__dirname,"jade"), 
    app:app 
    }) 

в производственном режиме я просто установить довольно ложь ...

НТН

+0

К сожалению, нет достаточно варианта для 'коа-views' :( Полагаю, мне придется попробовать koa-jade, спасибо. – saadq