模板渲染

fs.createReadStream

可以通过 fs.createReadStream 渲染一个HTML页面模板

app.js

const Koa = require('koa');
const app = new Koa();
const fs = require('fs');
const main = ctx => {
  ctx.response.type = 'html';
  ctx.response.body = fs.createReadStream('./views/index.html');
};
app.use(main);
app.listen(3000);

views/index.html

<h1>Hello world</h1>

ctx.render

使用 koa-generator 生成的项目默认使用 pug 模板进行渲染

app.js

router.get('/', async (ctx, next) => {
  await ctx.render('index', {
    title: 'Hello Koa 2!'
  })
})
  • ctx.render() 函数, 用于加载渲染引擎, 第一个参数为要渲染的模板, 第二个参数是需要传递的数据。

views/index.pug

extends layout
block content
  h1= title
  p Welcome to #{title}

MIT Licensed | Copyright © 2018-present 滇ICP备16006294号

Design by Quanzaiyu | Power by VuePress