使用 Koa 输出漂亮的 HTML 输出?
Pretty print HTML output with Koa?
有没有办法美化来自 Jade 模板的 HTML 输出?类似于 Express 的 app.locals.pretty = true;
?如果相关,我正在使用 koa-router
和 koa-views
。
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');
});
routes/index.js
const router = require('koa-router')();
router.get('/', function *() {
yield this.render('index');
});
module.exports = router;
views/index.玉
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
你可以试试:
app.use(views(`${__dirname}/views`, { extension: 'jade', pretty:true}));
应该可以解决问题...
另一方面,我使用 koa-jade 而不是 koa-views。我当前的代码如下所示:
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
})
在生产模式下,我只是将 pretty 设置为 false...
HTH
有没有办法美化来自 Jade 模板的 HTML 输出?类似于 Express 的 app.locals.pretty = true;
?如果相关,我正在使用 koa-router
和 koa-views
。
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');
});
routes/index.js
const router = require('koa-router')();
router.get('/', function *() {
yield this.render('index');
});
module.exports = router;
views/index.玉
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
你可以试试:
app.use(views(`${__dirname}/views`, { extension: 'jade', pretty:true}));
应该可以解决问题... 另一方面,我使用 koa-jade 而不是 koa-views。我当前的代码如下所示:
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
})
在生产模式下,我只是将 pretty 设置为 false...
HTH