在 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 相关文章推荐
破解Session cookie的方法
Jul 28 Javascript
JQUERY THICKBOX弹出层插件
Aug 30 Javascript
JS 的应用开发初探(mootools)
Dec 19 Javascript
Jquery中Ajax 缓存带来的影响的解决方法
May 19 Javascript
JS遍历Json字符串中键值对先转成JSON对象再遍历
Aug 15 Javascript
Javascript基础教程之数据类型 (布尔型 Boolean)
Jan 18 Javascript
js中数组插入、删除元素操作的方法
Feb 15 Javascript
Vue组件开发之LeanCloud带图形校验码的短信发送功能
Nov 07 Javascript
基于JS实现html中placeholder属性提示文字效果示例
Apr 19 Javascript
微信小程序开发之tabbar图标和颜色的实现
Oct 17 Javascript
微信小程序用户授权、位置授权及获取微信绑定手机号
Jul 18 Javascript
关于layui导航栏不展示下拉列表的解决方法
Sep 25 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
免费手机号码归属地API查询接口和PHP使用实例分享
2014/04/10 PHP
php对象在内存中的存在形式分析
2015/02/03 PHP
浅谈COOKIE和SESSION区别
2015/07/19 PHP
学习php设计模式 php实现单例模式(singleton)
2015/12/07 PHP
PHP使用Redis实现Session共享的实现示例
2019/05/12 PHP
js定义对象或数组直接量时各浏览器对多余逗号的处理(json)
2011/03/05 Javascript
js中的屏蔽的使用示例
2013/07/30 Javascript
JavaScript利用正则表达式去除日期中的“-”
2014/07/01 Javascript
分享一款基于jQuery的视频播放插件
2014/10/09 Javascript
Javascript基础教程之数组 array
2015/01/18 Javascript
Node.js事件驱动
2015/06/18 Javascript
Javascript点击按钮随机改变数字与其颜色
2016/09/01 Javascript
Actionscript与javascript交互实例程序(修改)
2016/09/22 Javascript
js 数据存储和DOM编程
2017/02/09 Javascript
jQuery插件HighCharts绘制的基本折线图效果示例【附demo源码下载】
2017/03/07 Javascript
nodejs 终端打印进度条实例代码
2017/04/22 NodeJs
Vue项目查看当前使用的elementUI版本的方法
2018/09/27 Javascript
JavaScript this关键字指向常用情况解析
2020/09/02 Javascript
openlayers4.6.5实现距离量测和面积量测
2020/09/25 Javascript
vue+iview使用树形控件的具体使用
2020/11/02 Javascript
[04:54]DOTA2-DPC中国联赛1月31日Recap集锦
2021/03/11 DOTA
python下函数参数的传递(参数带星号的说明)
2010/09/19 Python
pygame加载中文名mp3文件出现error
2017/03/31 Python
Python中static相关知识小结
2018/01/02 Python
python爬取哈尔滨天气信息
2018/07/14 Python
Python基础之函数的定义与使用示例
2019/03/23 Python
Python Django切换MySQL数据库实例详解
2019/07/16 Python
django 将自带的数据库sqlite3改成mysql实例
2020/07/09 Python
python里反向传播算法详解
2020/11/22 Python
轻金属冶金专业毕业生自荐信
2013/11/02 职场文书
会计与审计毕业生自荐信范文
2013/12/30 职场文书
学校卫生检查制度
2014/02/03 职场文书
设计师求职信
2014/07/01 职场文书
暑期培训班招生方案
2014/08/26 职场文书
领导干部贪图享乐整改措施
2014/09/21 职场文书
董事长助理岗位职责
2015/02/11 职场文书