Jade是一款高性能简洁易懂的模板引擎,Jade是Html的Javascript实现,在服务端(NodeJS)及客户端均有支持。

一、功能

客户端支持     超强的可读性    灵活易用的缩进  块扩展  代码默认经过编码处理以增强安全性  编译及运行时的上下文错误报告  命令行编译支持  HTML5模式

可选的内存缓存  联合动态和静态标记类  利用过滤器解析树的处理  支持 Express  利用each透明的循环objects,arrays甚至不可枚举对象  块注释  不需要标记前缀

AST过滤器   过滤器  ...

二、jade安装

npm install jade -g
jade -h

三、jade工具

推荐:online official

四、jade语法

4.1 标签

以p标签为例

p

会转换为:

<p></p>

jade能自动识别自闭和标签:

input

会转换为:

<input/>

4.2 文本

 4.2.1标签中添加文本

p 欢迎加入wandoujia-fe

会转换为:

<p>欢迎加入wandoujia-fe</p>

 

4.2.2 标签中嵌套标签

直接跟写html一样就行

p Welcome to wandoujia fe, we want <b>you</b>

会转换为:

<p>Welcome to wandoujia fe, we want <b>you</b></p>

 

4.2.3 标签中有大段的块内容

  • 方式一:在标签后面添加 "."

   比如一段js代码,注意是script后面有一个"."

script.
console.log('Welcome to join wandoujia-fe')
console.log('We want you')
  • 方式二:每段前面添加"|"
script
| console.log('Welcome to join wandoujia-fe')
| console.log('We want you')

转换结果:

<script>
console.log('Welcome to join wandoujia-fe')
console.log('We want you')
</script>

4.3 属性

()来分割属性

a(rel="nofollow", href="http://www.wandoujia.com/join#getJobInfo=1") 招聘

会转换为:

<a rel="nofollow" href="http://www.wandoujia.com/join#getJobInfo=1">招聘</a>

4.4 注释

 4.4.1 单行注释

// changed by yc-team 

会转换为:

<!-- changed by yc-team -->

 

4.4.2 多行注释

body
//
p 测试代码by yaochun

会转换为:

<body>
<!--p 测试代码by yaochun
-->
</body>

 4.4.3 不输出的注释

在单行注释上加一个短横线 -

//- 这段注释不会输出
p 文本测试by yaochun

会转换为:

<p>文本测试by yaochun</p>

注意: 很多文档里面提到的条件注释已经不再支持

4.5 doctype

添加一个doctype只需要doctype,然后再跟一个可选的值,默认是html

doctype html

会转换为:

<!DOCTYPE html>

注意:!!!这种简写的方式已经被抛弃了~

可选值还有:

  • xml
  • transitional
  • srict
  • frameset
  • 1.1
  • basic
  • mobile

4.6 设置id或class

标签后面跟上#id,.classname,如果没有标签则使用默认标签div

#content
p#info
a.btn

会转换为:

<div id="content"></div>
<p id="info"></p>
<a class="btn"></a>

4.7 1个id和多个class

连着写即可

a#download-btn.btn.blue-btn

会转换为:

<a id="download-btn" class="btn blue-btn"></a>

转自:http://www.w3cplus.com/html/jade.html

Jade模板引擎学习(一)安装及基本语法的更多相关文章

  1. jade模板引擎学习笔记(WebsStorm9.0.3+ nodejs+express+jade)

    jade环境搭建 jade标签写法 jade注释 jade添加类名.id.属性 jade添加脚本,css jade变量 jade多行文本显示 jade流程代码:for,each,while jade流 ...

  2. Jade模板引擎学习(二)语法:代码、变量、循环、过滤器及mixin

    Jade语法 一.代码 不会被缓冲代码 ul - for(var i=0; i; i++) li Jade Engine 会转换为: <ul> <li>Jade Engine& ...

  3. Express框架之Jade模板引擎使用

    日期:2018-7-8  十月梦想  node.js  浏览:2952次  评论:0条 前段时间讲说了ejs模板引擎,提到了jade的效率等等问题!今天在这里简单提一下jade的使用方式!结合expr ...

  4. Express全系列教程之(十):jade模板引擎

    一.前言 随着前端业务的不断发展,页面交互逻辑的不断提高,让数据和界面实现分离渐渐被提了出来.JavaScript的MVC思想也流行了起来,在这种背景下,基于node.js的模板引擎也随之出现. 什么 ...

  5. Jade 模板引擎使用

    在 Express 中调用 jade 模板引擎 jade 变量调用 if 判断 循环 Case 选择 在模板中调用其他语言 可重用的 jade 块 (Mixins) 模板包含 (Includes) 模 ...

  6. artTemplate模板引擎学习实战

    在我的一篇关于智能搜索框异步加载数据的文章中,有博友给我留言,认为我手写字符串拼接效率过低,容易出错.在经过一段时间的摸索和学习之后,发现现在拼接字符串的方法都不在是自己去书写了,而是使用Javasc ...

  7. NVelocity模板引擎学习笔记

    NVelocity模板引擎学习笔记 学习模板引擎有一段时间现在做一些总结

  8. Jade模板引擎使用详解

    在 Express 中调用 jade 模板引擎 jade 变量调用 if 判断 循环 Case 选择 在模板中调用其他语言 可重用的 jade 块 (Mixins) 模板包含 (Includes) 模 ...

  9. nodejs jade 模板 引擎的使用方法

    1.新建项目 2.使用模板引擎 app.set('view engine','jade'); 3.使用render渲染一个视图 res.render(用于指定需要被渲染的视图(必选),本地变量(可选) ...

随机推荐

  1. 2.hbase原理(未完待续)

    hbase简介相关概念hmsterhregionserver表regionhstorememstorestorefilehfileblockcacheWALminorcompactmajorcompa ...

  2. 关于docker 基础使用记录

    Docker Hub地址:https://hub.docker.com Docker Hub 存放着 Docker 及其组件的所有资源.Docker Hub 可以帮助你与同事之间协作,并获得功能完整的 ...

  3. 《C++常见问题及解答》

    一.类 1. 常数据成员的初始化只能在构造函数的初始化列表中进行 2. 静态数据成员不可以在类内初始化 3. 创建一个对象时的构造函数的调用次序:对象成员的构造函数.对象自身的构造函数 4. 创建一个 ...

  4. unordered_map(hash_map)和map的比较

    测试代码: #include <iostream> using namespace std; #include <string> #include <windows.h& ...

  5. c# 中base64字符串和图片的相互转换

    c#base64字符串转图片用到了bitmap类,封装 GDI+ 位图,此位图由图形图像及其特性的像素数据组成. Bitmap 是用于处理由像素数据定义的图像的对象. 具体bitmap类是什么可以自己 ...

  6. MySQL event调度

    基本命令 //查看事件调度是否开启 show variables like '%event_scheduler%'; //开启事件调度 SET GLOBAL event_scheduler = ON; ...

  7. iOS-学习UIKIt框架的重要性

      前言: 众所周知,我们的移动设备的屏幕上可以展示很多图形界面,作为用户的我们可以通过屏幕上的图形界面浏览信息,也可以通过与图形界面的简单交互,在移动设备上实现各种各样的功能操作.....可以说,没 ...

  8. Runtime介绍

    本文目录 1.Runtime简介 2.Runtime相关的头文件 3.技术点和应用场景 3_1.获取属性\成员变量列表 3_2.交换方法实现 3_3.类\对象的关联对象,假属性 3_4.动态添加方法, ...

  9. 【bzoj4698】[Sdoi2008] Sandy的卡片 后缀数组

    题目描述 Sandy和Sue的热衷于收集干脆面中的卡片.然而,Sue收集卡片是因为卡片上漂亮的人物形象,而Sandy则是为了积攒卡片兑换超炫的人物模型.每一张卡片都由一些数字进行标记,第i张卡片的序列 ...

  10. CentOS 文件特殊权限SUID,SGID,SBIT

    1.SUID ,是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有所有者的权限(仅对拥有执行权限的二进制程序有效). (1)SUID权限仅对二进制程序有效: (2)本权限仅在执行该 ...