详解Node.js模板引擎Jade入门

2020-06-17 07:19:16易采站长站整理

<p>Python: 3</p>
<p>Java: 1</p>
</div>

12、过滤器

过滤器的作用是: 用另一种语言来写一个文本块;


p
:markdown
# practical Node.js
[This book](http://csdn.net) really helps to grasp many coponents needed for modern-day web development.

注意: 要想使用Markdown过滤器,需要安装Markdown模块,以及Marked和Markdown NPM包。

13、case


- var coins = Math.round(Math.random() * 10)

case coins
when 0
p You have no money
when 1
p You have a coin
default
p You have #{coins} coins!

14、Function mixin

如果你使用过sass又或者compass的mixin你肯定不会陌生,而Jade 里mixin的使用方法和它们基本相同。

声明的语法: mixin name(param, param2, …….)

调用: +name(data)


mixin row(items)
tr
each item, index in items
td= item

mixin table(tableData)
table
each row, index in tableData
+row(row)

- var node = [{name: "express"}, {name: "Jade"}, {name: "Handlebars"}]+table(node)

- var js = [{name: 'backbone'}, {name: 'angular'}, {name: "emberJS"}]+table(js)

输出:


<table>
<tr>
<td>express</td>
</tr>
<tr>
<td>Jade</td>
</tr>
<tr>
<td>Handlebars</td>
</tr>
</table>

<table>
<tr>
<td>backbone</td>
</tr>
<tr>
<td>angular</td>
</tr>
<tr>
<td>emberJS</td>
</tr>
</table>

15、include

include与引入JS和CSS外部文件很相似。它是自顶向下的方法: 在include其它文件的主文件里,我们决定要用什么。主文件会被首先处理(可以在主文件了定义数据locals),然后才会再接着处理主文件里所包含进来的子文件(子文件里可以使用主文件中定义的数据locals);

包含一个Jade模板,用include /path/filename.

例如,在文件A里:


include ./includes/header

注意: 这里不用给模板名以及路径添加双引号或者单引号。

再例如,从父目录开始查找:


include ../includes/footer

注意:不能再文件名和文件路径中使用变量,因为includes/partials是在编译时处理的,而不是在执行时。

对于使用Sass、Compass又或者Less的人这些事再熟悉不过的了。