代码拉取完成,页面将自动刷新
see [egg docs][egg] for more detail.
$ npm i
$ npm run dev
$ open http://localhost:7001/
yarn add egg-view-nunjucks --save
// config/plugin.js
exports.nunjucks = {
enable: true,
package: 'egg-view-nunjucks'
}
// config/config.default.js
const path = require('path')
module.exports = appInfo => {
const config = {}
config.view = {
// 模板文件的根目录,默认为app/view,支持多目录(以,分割,会从多目录中查找文件)
root: [
path.join(appInfo.baseDir, 'app/view'),
path.join(appInfo.baseDir, 'path/to/another'),
].join(','),
// 是否开启缓存,开启后,下次渲染同样路径的模板时不会重新查找
cache: true,
// 指定使用的模板引擎
// 当渲染时,就会根据后缀名查找使用相应的模板引擎渲染
// 如:await ctx.render('home.html')
mapping: {
'.html': 'nunjucks'
},
// 可以设置默认的模板引擎
defaultViewEngine: 'nunjucks',
// 设置默认的模板引擎后缀,设置后就可以在调用时省略
// 如:await ctx.render('home')
defaultExtension: '.html'
}
return config
}
// 在controller控制器配置
'use strict';
const Controller = require('egg').Controller;
class HomeController extends Controller {
async index() {
let title = "我是首页"; //向模板传入数据
await this.ctx.render('index',{
title: title
});
}
}
module.exports = HomeController;
1、普通数据
{{ title }}
2、for循环
{% for item in list %}
{{ item.id }}
{% endfor %}
3、if语句,多条件使用:and, or, not
{% if i < 0 %}
条件内容
{% elif i >=0 and i < 100 %}
条件内容
{% else %}
条件内容
{% endif %}
4、三目运算
{{ "是" if isVip == 1 else "否" }}
5、引入其他模板
{% include "../header.html" %}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。