在 Express 中使用模板引擎


Posted in Javascript onDecember 10, 2015

需要在应用中进行如下设置才能让 Express 渲染模板文件:

views, 放模板文件的目录,比如: app.set('views', './views')
view engine, 模板引擎,比如: app.set('view engine', 'jade')

然后安装相应的模板引擎 npm 软件包。

$ npm install jade --save

和 Express 兼容的模板引擎,比如 Jade,通过 res.render() 调用其导出方法 __express(filePath, options, callback) 渲染模板。

有一些模板引擎不遵循这种约定,Consolidate.js 能将 Node 中所有流行的模板引擎映射为这种约定,这样就可以和 Express 无缝衔接。

一旦 view engine 设置成功,就不需要显式指定引擎,或者在应用中加载模板引擎模块,Express 已经在内部加载,如下所示。

app.set('view engine', 'jade');

在 views 目录下生成名为 index.jade 的 Jade 模板文件,内容如下:

html
 head
  title!= title
 body
  h1!= message

然后创建一个路由渲染 index.jade 文件。如果没有设置 view engine,您需要指明视图文件的后缀,否则就会遗漏它。

app.get('/', function (req, res) {
 res.render('index', { title: 'Hey', message: 'Hello there!'});
});

此时向主页发送请求,“index.jade” 会被渲染为 HTML。

Javascript 相关文章推荐
求解开jscript.encode代码的asp函数
Feb 28 Javascript
Javascript 定时器调用传递参数的方法
Nov 12 Javascript
理解Javascript_05_原型继承原理
Oct 13 Javascript
jquery实现网站超链接和图片提示效果
Mar 21 Javascript
jQuery学习笔记之jQuery.extend(),jQuery.fn.extend()分析
Jun 09 Javascript
JavaScript中伪协议 javascript:使用探讨
Jul 18 Javascript
纯js模拟div层弹性运动的方法
Jul 27 Javascript
jQuery实现响应鼠标事件的图片透明效果【附demo源码下载】
Jun 16 Javascript
Javascript 实现简单计算器实例代码
Oct 23 Javascript
Vue数据驱动模拟实现3
Jan 11 Javascript
Vue源码探究之虚拟节点的实现
Apr 17 Javascript
js实现登录拖拽窗口
Feb 10 Javascript
Express实现前端后端通信上传图片之存储数据库(mysql)傻瓜式教程(一)
Dec 10 #Javascript
基于jQuery实现复选框是否选中进行答题提示
Dec 10 #Javascript
日常收集整理的JavaScript常用函数方法
Dec 10 #Javascript
详解AngularJS中module模块的导入导出
Dec 10 #Javascript
SpringMVC restful 注解之@RequestBody进行json与object转换
Dec 10 #Javascript
Spring mvc 接收json对象
Dec 10 #Javascript
SpringMVC返回json数据的三种方式
Dec 10 #Javascript
You might like
php中利用explode函数分割字符串到数组
2014/02/08 PHP
详解WordPress中调用评论模板和循环输出评论的PHP函数
2016/01/05 PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
2019/12/25 PHP
[原创]后缀就扩展名为js的文件是什么文件
2007/12/06 Javascript
在一个js文件里远程调用jquery.js会在ie8下的一个奇怪问题
2010/11/28 Javascript
DOM 中的事件处理介绍
2012/01/18 Javascript
JS中getYear()和getFullYear()区别分析
2014/07/04 Javascript
常用的jquery模板插件——jQuery Boilerplate介绍
2014/09/23 Javascript
使用jsonp完美解决跨域问题
2014/11/27 Javascript
JavaScript实现为指定对象添加多个事件处理程序的方法
2015/04/17 Javascript
jQuery实现仿百度帖吧头部固定导航效果
2015/08/07 Javascript
jQuery EasyUI基础教程之EasyUI常用组件(推荐)
2016/07/15 Javascript
如何用js判断dom是否有存在某class的值
2017/02/13 Javascript
JavaScript两个变量交换值的实现方法
2017/03/01 Javascript
JavaScript数据结构中串的表示与应用实例
2017/04/12 Javascript
Vue 父子组件的数据传递、修改和更新方法
2018/03/01 Javascript
vue.js实现备忘录demo
2019/06/26 Javascript
[41:37]DOTA2北京网鱼队选拔赛——冲击职业之路
2015/04/13 DOTA
python实现简单的TCP代理服务器
2014/10/08 Python
Python实现模拟浏览器请求及会话保持操作示例
2018/07/30 Python
基于Python获取docx/doc文件内容代码解析
2020/02/17 Python
python实现UDP协议下的文件传输
2020/03/20 Python
python Matplotlib数据可视化(1):简单入门
2020/09/30 Python
伦敦剧院及景点门票:Encore Tickets
2018/07/01 全球购物
中国双语服务优势的在线购票及活动平台:247tickets
2018/10/26 全球购物
美国女士内衣在线折扣商店:One Hanes Place
2019/03/24 全球购物
德国、奥地利和瑞士最大的旅行和度假门户网站:HolidayCheck
2019/11/14 全球购物
一套软件开发工程师笔试题
2015/05/18 面试题
九一八事变纪念日演讲稿
2014/09/14 职场文书
承兑汇票转让证明怎么写?
2014/11/30 职场文书
小学班主任评语
2014/12/29 职场文书
学校办公室主任岗位职责
2015/04/01 职场文书
宝宝满月宴答谢词
2015/09/30 职场文书
小学语文继续教育研修日志
2015/11/13 职场文书
党员学习中国梦心得体会
2016/01/05 职场文书
创业计划书之蛋糕店
2019/08/29 职场文书