Back

jade急速入门 (node 模板: node jade template)

发布时间: 2015-02-24 05:55:00

refer to:  http://jade-lang.com/  

jade入门其实很简单, 有很多在线的html to jade 转换工具, 一看就明白:  http://html2jade.org/

为什么用jade 

可以让我们更专心的写代码.   

下面是一个 例子,  html代码比 jade 的代码量多出来 17%.  或者说, jade 的代码量是 html的 85%. 差距在于 各种 关闭标签 </View> 各种 尖括号 <> , 双引号.  ( id="view1" 与 #view1 的代码量比是:  10: 6 = 5 : 3) 不要小看这个比值啊亲! 直接拉开与对手的差距. 

html: ( 875 字节)

<Alloy>
  <Window>
    <ScrollableView id="scrollableView" showPagingControl="true" width="100%">
      <View id="view1" backgroundColor="#123">
        <ImageView image="/images/index/guide01.png" width="100%" height="100%" left="%0" top="%0"></ImageView>
      </View>
      <View id="view2" backgroundColor="#246">
        <ImageView image="/images/index/guide02.png" width="100%" height="100%" left="%0" top="%0"></ImageView>
      </View>
      <View id="view3" backgroundColor="#48b">
        <ImageView image="/images/index/guide03.png" width="100%" height="100%" left="%0" top="%0"></ImageView>
      </View>
      <View id="view4">
        <ImageView image="/images/index/guide04.png" width="100%" height="100%" left="%0" top="%0"></ImageView>
        <Button id="go" onClick="go_login">立即体验</Button>
      </View>
      </ScrollableView>
  </Window>
</Alloy>

jade:  ( 746 字节) 

Alloy
    Window
        ScrollableView#scrollableView( showPagingControl="true" width="100%")
            View#view1(backgroundColor="#123")
                ImageView(image="/images/index/guide01.png" width="100%" height="100%" left="%0" top="%0")
            View#view2(backgroundColor="#246")
                ImageView(image="/images/index/guide02.png" width="100%" height="100%" left="%0" top="%0")
            View#view3(backgroundColor="#48b")
                ImageView(image="/images/index/guide03.png" width="100%" height="100%" left="%0" top="%0")
            View#view4
                ImageView(image="/images/index/guide04.png" width="100%" height="100%" left="%0" top="%0")
                Button#go(onClick="go_login") 立即体验

这个是教程:  http://jade-lang.com/tutorial/

不过还是记录一下吧:  

安装

$ npm install -g jade

编译:

$ jade login.jade  --pretty    (编译一个文件)

$ jade src/views  --pretty  (编译多个文件)

语法

1. id, class 分别以#, . 来连接. inline属性使用圆括号.   大小写敏感

<Window id="my_id" class="my_class1 my_class2" style='color:red' backgroundColor="white">

可以直接写成:  注意: 圆括号, . # 之前不能有空格. 否则 jade 会认为后面的内容不是attribute 而是content

window#my_id.my_class1.my_class2(style='color:red', backgroundcolor='white')

2.  严格使用缩进来实现上下层级关系. 

<ul>   <li>a</li> <li>b</li> </ul> 写成:

ul
  li a
  li b

3. 使用 |  或者 .. 来显示多行文字:

<h1>Welcome to Jade</h1>
<p>
Text can be included in a number of
different ways.
</p>
<p>
This way is shortest if you need big
blocks of text spanning multiple
lines.
</p>

写成: 

h1 welcome to jade
p
  | Text can be included in a number of
  | different ways.
p.
  This way is shortest if you need big
  blocks of text spanning multiple
  lines.

Back