一、Koa2 使用 EJS 模板引擎   

1、安装Koa模板中间件模块,及EJS模板引擎模块

安装koa模板使用中间件:npm install koa-views --save 

安装ejs模板引擎:npm install ejs --save

2、新建一个目录用来存放模板文件,通常是一些html文件,目录通常名称为 views 

3、模板文件:login.html   

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title><%=title%></title>
</head>
<body></body>
</html>

4、代码:

const Koa = require('koa'), router = require('koa-router')(), static = require('koa-static'), path = require('path'),
session = require('koa-session'), views = require('koa-views'), app = new Koa();

/** 配置并加载模板引擎中间件 */
//如果这样配置,则需要将后缀改为【ejs
// app.use(views(path.join(__dirname, './views'), {extension: 'ejs'}));
//按以下配置,则不需要将后缀改为【ejs】,使用html即可
app.use(views('views', {map: {html: 'ejs'}}));

router.get('/', async function (ctx) {
let title = '学生管理系统登录页面';
await ctx.render('login', {title});
});

//启动路由
app.use(router.routes()).use(router.allowedMethods()).listen(8080, () => { console.log('服务已启动'); });

二、Koa2 使用 Handlebars 模板引擎   

1、安装Koa模板中间件模块,及handlebars模板引擎模块

         安装koa模板使用中间件:npm install koa-views --save 

         安装handlebars模板引擎:npm install handlebars --save

2、新建一个目录用来存放模板文件,通常是一些html文件,目录通常名称为 views 

3、模板文件:login.html  

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{{title}}</title>
</head>
<body></body>
</html>

4、代码:

const Koa = require('koa'), router = require('koa-router')(), static = require('koa-static'), path = require('path'),
session = require('koa-session'), views = require('koa-views'), app = new Koa();
/**
* 配置并加载模板引擎中间件
*/
app.use(views(path.join(__dirname, 'views'), {
map: {html: 'handlebars'},
options: {
helpers: {
uppercase: (str) => str.toUpperCase()
},
partials: {
header: 'template/header',//引用template下的header,使用partials模块化系统页面
account: 'template/account',
comment: 'template/comment',
footer: 'template/footer'
},
cache: true //是否缓存模板字符串,建议开发阶段设置为false,或者不用设置
}
}));

router.get('/', async function (ctx) {
let title = '学生管理系统登录页面';
await ctx.render('login', {title});
});

//启动路由
app.use(router.routes()).use(router.allowedMethods()).listen(8080, () => {
console.log('服务已启动');
});

其中配置引擎中间件那块可以简单写成: 

app.use(views('views', {
map: {html: 'handlebars'}
}));

 

 

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部