文档章节

Express 3.x以后模板继承的改变

前世疯狂
 前世疯狂
发布于 2015/07/16 16:25
字数 373
阅读 45
收藏 0

        在使用Express 开发web项目时突然发现继承功能无法正常启用了,然而网上大多还是停留在之前的版本的记录。在3.x以后的版本中模板继承功能已经不再被支持了,如果需要继续使用这个功能的话需要单独加载继承模块的中间件 express-partials 。

        因此,我们需要在项目中单独安装下express-partials

$ npm install express-partials

        在安装完成后,可以根据官方的例子调整已有的项目即可重新集成模板继承功能。

        github上面提供了一个简单的例子展示如何调用新的中间件:

var express = require('express')
  , partials = require('express-partials')  // 添加加载声明
  , app = express();
  
// 加载中间件
eapp.use(partials());

app.get('/',function(req,res,next){
  res.render('index.ejs') 
  // -> render layout.ejs with index.ejs as `body`.})

app.get('/no-layout',function(req,res,next){
  res.render('index.ejs',{layout:false})  // -> only renders index.ejs})

app.get('/mobile',function(req,res,next){
  res.render('index.ejs',{layout:'mobile'})  // -> render mobile.ejs with index.ejs as `body`.})

从官方提供的例子可以看出在新版中需要单独引入继承模块并进行调用,加入上述声明与调用即可。

注:app.use(partials()); 语句必须放在路由调用的前面,否则无法正常起效(即必须放在 app.use(app.router); 的上面)。


        参考文档:https://github.com/publicclass/express-partials

                       http://aresli.com/nodejs-expressjs-study-notes-3.html

© 著作权归作者所有

共有 人打赏支持
前世疯狂
粉丝 8
博文 32
码字总数 20052
作品 0
武汉
架构师
私信 提问
nodejs学习日志1--开发环境安装配置

nodejs作为新技术已经越来越成熟,1.0稳定版本也快发布了,机缘巧合,自己在公司也尝试了一把nodejs的web网站开发,本来我就是开发PHP的,看到介绍理论上node是比PHP要快,姑且不去理这些理论...

十七亮
2013/06/19
0
0
node.js框架 express

express是在node.js的基础上,拓展出的一个简洁实用的框架结构,运用这个东西,我们可以更方便的处理很多的事情。只要上手了,那就是个贝多芬! 一般安装express有几种方法。 第一,使用npm...

西来飞鸿
2014/08/15
0
3
Express新手入坑笔记之Handlebars模板继承

续Express新手入坑笔记之动态渲染HTML,上一篇只是初步实现了html的动态渲染,但不够灵活, 如果写一个动态网站, 会遇到大量模板复用的场景, 为每个url写一个单独的html文件是非常耗时耗力的, 而...

木子昭
2018/12/13
0
0
Nodejs MVC 框架--Monk.Node

Monk.Node Monk.Node 是基于 Express.js(4.x) + Sequelize.js(3.x) 的 Nodejs MVC 框架。 框架特点: 基于Node.js平台开发,Javascript作为主要编写语言 极易入门,前后端开发者都能快速上手...

百小僧
2016/12/13
1K
4
nodejs 之express 笔记 app.helpers 和 app.locals

app.helpers 和app.dynamicHelpers 是express2.X使用的 分别为静态/动态 视图助手通过其注册函数, 例如 app.helpers({ inspect: function(obj) { return util.inspect(obj, true);}}); 但是......

唐朝和尚
2015/10/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

租房软件隐私保护如同虚设

近日,苏州市民赵先生向江苏新闻广播新闻热线025-84658888反映,他在“安居客”手机应用软件上浏览二手房信息,并且使用该软件自动生成的虚拟号码向当地一家中介公司进行咨询。可电话刚挂不久...

linux-tao
今天
1
0
分布式项目(五)iot-pgsql

书接上回,在Mapping server中,我们已经把数据都整理好了,现在利用postgresql存储历史数据。 iot-pgsql 构建iot-pgsql模块,这里我们写数据库为了性能考虑不在使用mybatis,换成spring jd...

lelinked
今天
4
0
一文分析java基础面试题中易出错考点

前言 这篇文章主要针对的是笔试题中出现的通过查看代码执行结果选择正确答案题材。 正式进入题目内容: 1、(单选题)下面代码的输出结果是什么? public class Base { private Strin...

一看就喷亏的小猿
今天
2
0
cocoapods 用法

cocoapods install pod install 更新本地已经install的仓库 更新所有的仓库 pod update --verbose --no-repo-update 更新制定的仓库 pod update ** --verbose --no-repo-update...

HOrange
今天
3
0
linux下socket编程实现一个服务器连接多个客户端

使用socekt通信一般步骤 1)服务器端:socker()建立套接字,绑定(bind)并监听(listen),用accept()等待客户端连接。 2)客户端:socker()建立套接字,连接(connect)服务器,连接上后...

shzwork
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部