Jade之Template Inheritance
Template inheritance
jade支持通过关键字block和extends来实现模板继承。
比如,在layout.jade写上如下代码
html
head
title My Site - #{title}
block scripts
script(src='/jquery.js')
body
block content
p Nothing
block foot
#footer
p some footer content
中间的block content代表块,content表示块名字。
另一个index.jade文件中可以继承layout.jade文件。
extends ./layout.jade
block scripts
script(src='/jquery.js')
block content
h1= title
each pet in pets
include pet
在index.jade文件中,父模板中的block content块将在子模板中被重写(包括块内内容),即编译index.jade生成的html文件中,content块中将不含有<p>Nothing</p>这部分代码。
这是一个递归的过程。
extends ...表示从layout.jade文件中将所有代码已经继承过来了。
extends后可以加需要继承文件的相对路径,若在同一文件下,用不含后缀名的文件名即可。
Append block、Prepend block
对于之前的layout.jade代码中的block scripts块,若想在index.jade中的block scripts块中继续添加script(src='/jquery.js')这条语句,即生成的index.html中block scripts中包含两条script语句,那么只需将index.jade中block scripts改为block append scripts或block prepend scripts即可。如下:
block append scripts
script(src='/jquery.js')
或者如下
block prepend scripts
script(src='/jquery.js')
这两种方法的区别在于,prepend会先编译子模板块内的内容再编译父模板块内的内容,append则相反。
Jade之Template Inheritance的更多相关文章
- The template engine
Play has an efficient templating system which allows to dynamically generate HTML, XML, JSON or any ...
- The Django template language 阅读批注
The Django template language About this document This document explains the language syntax of the D ...
- vue 使用Jade模板写html,stylus写css
vue 使用Jade模板写html,stylus写css 日常工作都是使用vue开发页面和webApp,写的多了就想偷懒简化各种书写方式,所以使用了jade写html,stylus写css,省了很多的 ...
- 模板引擎之jade 学习
jade 模板引擎在node express 开发中有较多的使用,首先我们看一个简单的使用jade 生成的html 页面的标签代码: doctype html html(lang="en&q ...
- jade简介
模板引擎:将动静部分糅合的一种实现机制或者技术 var items = [ {title:'..',photo:'http://',id:1,desc:'a'}, {title:'..',photo: ...
- inheritance in kentico
Visual inheritance http://devnet.kentico.com/docs/7_0/devguide/index.html?visual_inheritance.htm The ...
- Node.js高级编程读书笔记 - 4 构建Web应用程序
Outline 5 构建Web应用程序 5.1 构建和使用HTTP中间件 5.2 用Express.js创建Web应用程序 5.3 使用Socket.IO创建通用的实时Web应用程序 5 构建Web应 ...
- 基于express+mongodb+pug的博客系统——pug篇
很久之前就想自己搭一个博客了,最开始用hexo+github,但是换电脑后总是有些麻烦.后来使用WordPress,但是用WordPress总觉得没什么技术含量,前后端都是人家写好的,而且买的垃圾虚拟 ...
- Go 语言相关的优秀框架,库及软件列表
If you see a package or project here that is no longer maintained or is not a good fit, please submi ...
随机推荐
- 《Linux内核分析》课程总结
朱宇轲 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 不知不觉,在网易 ...
- do-while语句
一.语句格式格式1:do 语句1;while (条件表达式); 格式2:do { 语句1; 语句2; -}while (条件表达式); 语句执行过程:1.执行一遍循环体.2.求出作为循环条件的 ...
- 使用Atlas实现MySQL读写分离
1.MySQL所在机器 192.168.29.128(Master) 192.168.29.129(Slave) 配置好主从同步,参考 http://www.cnblogs.com/luxh/p/40 ...
- hive查询
查询语句可以直接使用非分析函数的变量的别名 select t1.* from ( select account_id, sum(recharge_money) recharge_money_total ...
- 使用JDBC处理MySQL大数据
一.基本概念 大数据也称之为LOB(Large Objects),LOB又分为:clob和blob,clob用于存储大文本,blob用于存储二进制数据,例如图像.声音.二进制文等. 在实际开发中,有时 ...
- PreparedStatement解决sql注入问题
总结 PreparedStatement解决sql注入问题 :sql中使用?做占位符 2.得到PreparedStatement对象 PreparedStatement pst=conn.prepar ...
- C++ 创建和遍历二叉树
一个简单的创建和遍历二叉树的C++程序,二叉树的其他操作程序待更新. #include <iostream> using namespace std; struct BiTNode{ ch ...
- 5.Makefile的原理及应用
1.概念 目标:目标顶格写,后面是冒号(冒号后面是依赖) 依赖:依赖是用来产生目标的原材料. 命令:命令前面一定是两个Tab,不能是定格,也不能说多个空格.命令就是要生成那个目标需要做的动作. 2.基 ...
- #error作用
指令 用途 # 空指令,无任何效果 #include 包含一个源代码文件 #define 定义宏 #undef 取消已定义的宏 #if 如果给定条件为真,则编译下面代码 #ifdef 如果宏已经定义, ...
- java基础知识点复习
第一天: JRE.JDK是什么? Jre java运行环境.Jre = java虚拟机+核心类库(辅助java运行的文件) Jdk:java开发工具集jdk = jre+java的开发工具 2. 配置 ...