Jade进阶使用

作者:短工邦技术部 - 陈文哲

Jade优点

要使用Jade,其实不是那么容易接受的,几个优点我列出来。 
1. 熟悉的话,开发确实比较快,适合全栈开发。 
2. 强制使用缩进,但比较简洁,也不像html又要写开头又要写结尾。 
3. 模板继承方便

新的目录结构

  • views 
    • includes //公用 
      • head.jade
      • header.jade
    • pages //放置页面 
      • index.jade
    • layout.jade
  • app.js

app.js

首先app.js做一些变化,伪造一个数组遍历给视图(往后接入数据库交互,就是操作这些数据。)

var express = require('express')
var port = process.env.PORT || 3000
var app = express()

app.set('views','./views/pages')        //设置视图目录
app.set('view engine','jade')           //设置默认的模板引擎
app.listen(port)                        //监听

console.log("启动服务")

app.get('/',function(req,res) {
    res.render('index',{
        title:'短工邦技术部',
        Members:[
            {
                Name:'陈文哲',
                Job:'负责人'
            },
            {
                Name:'陈文超',
                Job:'技术经理'
            },
            {
                Name:'黄俊贤',
                Job:'设计师'
            },
            {
                Name:'罗辙',
                Job:'平面设计师'
            },
            {
                Name:'吴涛',
                Job:'iOS开发工程师'
            },
            {
                Name:'陈恩湖',
                Job:'iOS开发工程师'
            },
            {
                Name:'陈精松',
                Job:'Web开发工程师'
            },
            {
                Name:'郑炫松',
                Job:'Web开发工程师'
            },
            {
                Name:'李嘉',
                Job:'Web开发工程师'
            }
        ]
    })
})
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53

includes

head.jade代码如下

script(src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js")
//其他任何共同放在<head></head>的代码
 
 
  • 1
  • 2
  • 1
  • 2

header.jade代码如下

.header
    h1 #{title}
    small 广州领聘信息科技有限公司
 
 
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

layout.jade

layout用来组织includes的文件,然后被具体页面所调用。(人为规范这样子使用而已)

doctype
html
    head
        meta(charset="utf-8")
        title #{title}
        include ./includes/head
    body
        include ./includes/header
        block content
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

index.jade

使用模板继承,模块清晰,简洁,也容易维护。

extend ../layout

block content
    table
        tr
            td 姓名
            td 职位
        each item in Members
            tr
                td #{item.Name}
                td #{item.Job}
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

重启服务,效果如下 
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值