Jade模板引擎(一)之Attributes
目录:
Attributes
jade中的属性和html中的属性并没有什么太大区别, 值也和js的规则没有什么两样。
1. js表达式
jade:
- var authenticated = true
a(class=authenticated ? 'authed' : 'anon')
html:
<a class="authed"></a>
2. 多属性换行
jade:
input(
type='checkbox'
name='agreement'
checked
)
html:
<input type="checkbox" name="argeement" checked="checked" />
3. 非转义属性(Unescaped Attributes)
默认情况下, 所有属性都是转义过的。这样做是为了安全起见,防止XSS攻击。如果需要使用特殊字符,可以使用"!="替代"="。
jade:
div(escaped="<code>")
div(unescaped="<code>")
html:
<div escaped="<code>"></div>
<div unescaped="<code>"></div>
Boolean Attributes
在jade中, 属性值可以是bool值(true or false), 不设置值则默认是true。
jade:
input(type='checkbox', checked)
input(type='checkbox', checked=true)
input(type='checkbox', checked=false)
input(type='checkbox', checked=true.toString())
html:
<input type="checkbox" checked="checked" />
<input type="checkbox" checked="checked" />
<input type="checkbox" />
<input type="checkbox" checked="true" />
Style Attributes
style属性可以是一个string也可以是一个object。比如json格式的对象形式。
jade:
a(style={color: 'red', background:'green'})
html:
<a style="color:red;background:green"></a>
Class Attributes
class属性可以是一个string也可以是一个定义的class的数组对象。
jade:
- var classes = ['foo', 'bar', 'baz']
a(class=classes)
a.bing(class=classes class=['bing'])
html:
<a class="foo bar baz"></a>
<a class="bing foo bar baz bing"></a>
同样可以通过使用条件的形式来实现。
jade:
- var currentUrl = '/about'
a(class={active: currentUrl === '/'} href='/') Home
a(class={active: currentUrl === '/about'} href='/about') About
html:
<a href="/">Home</a>
<a href="/about" class="active">About</a>
&Attributes
&attributes可以将其两边的属性对象都加入到元素当中。
jade:
- var attributes = {'data-foo': 'bar'}
div#foo(data-bar='foo')&attributes(attributes)
html
<div id="foo" data-bar='foo' data-foo='bar'></div>
注: 在使用&attributes的情况下, 它并没有实现自动转义。所以需要通过一定的手段来确保你的页面不会出现XSS漏洞。
Jade模板引擎(一)之Attributes的更多相关文章
- Jade 模板引擎使用
在 Express 中调用 jade 模板引擎 jade 变量调用 if 判断 循环 Case 选择 在模板中调用其他语言 可重用的 jade 块 (Mixins) 模板包含 (Includes) 模 ...
- jade模板引擎学习笔记(WebsStorm9.0.3+ nodejs+express+jade)
jade环境搭建 jade标签写法 jade注释 jade添加类名.id.属性 jade添加脚本,css jade变量 jade多行文本显示 jade流程代码:for,each,while jade流 ...
- Jade模板引擎使用详解
在 Express 中调用 jade 模板引擎 jade 变量调用 if 判断 循环 Case 选择 在模板中调用其他语言 可重用的 jade 块 (Mixins) 模板包含 (Includes) 模 ...
- Express框架之Jade模板引擎使用
日期:2018-7-8 十月梦想 node.js 浏览:2952次 评论:0条 前段时间讲说了ejs模板引擎,提到了jade的效率等等问题!今天在这里简单提一下jade的使用方式!结合expr ...
- Express全系列教程之(十):jade模板引擎
一.前言 随着前端业务的不断发展,页面交互逻辑的不断提高,让数据和界面实现分离渐渐被提了出来.JavaScript的MVC思想也流行了起来,在这种背景下,基于node.js的模板引擎也随之出现. 什么 ...
- nodejs jade 模板 引擎的使用方法
1.新建项目 2.使用模板引擎 app.set('view engine','jade'); 3.使用render渲染一个视图 res.render(用于指定需要被渲染的视图(必选),本地变量(可选) ...
- jade模板引擎
最近用jade写了点东西,觉得挺有趣的,是一个有意思的模板引擎. 比如说,像这样的结构的html <span> <i class="icon-edit">& ...
- Express开发实例(2) —— Jade模板引擎
前一篇通过helloworld,简单介绍了Express中的开发,本篇继续深入的学习express的模板. 关于Jade的用法,网上有很多,本篇参考:Jade语法 安装相关模块 在实验代码前,应该先安 ...
- 初次入坑jade模板引擎(一)
最近由于工作需要全栈开发,nodejs做后端,在写一个后台管理系统的时候,我一直在考虑用怎样的方式去写,尝试过依然采用前后端分离的结构.使用json数据进行数据交互的模式,但是尝试过才知道,真的很花时 ...
随机推荐
- HTTP与HTTPS握手的那些事
今天我总结了什么是HTTP三次握手,还有HTTPS握手的过程以及为什么HTTPS是安全的. 前提 在讲述这两个握手时候,有一些东西需要提前说明. HTTP与TCP/IP区别? TPC/IP协议是传输层 ...
- JavaScript强化教程 - 六步实现贪食蛇
1.首先创建div 并且给div加样式 <div id="pannel" style="width: 500px;height: 500px;z-index: 1; ...
- ArcGIS中的WKID
提到坐标系统,大家多少能明白一些,但在运用时,有些朋友搞得不是非常清楚,以后专门来总结.在实地生产项目中,使用较多的2000中国大地坐标系(CGCS2000).1980西安坐标系.1954北京坐标系统 ...
- 如何找回Oracle中system,sys用户的密码[转]
Oracle中如果不知道system,sys用户的密码后可用如下方法找回: 首先以一个普通用户等入数据库: 在SQL*Plus中执行如下命令: SQL>connect/as sysdba (也可 ...
- DirectX HLSL相关基础
DirectX HLSL相关 顶点着色器可用软件顶点运算方式来模拟,即在创建设备时,将设备行为标记设定为: D3DCREATE_SOFTWARE_VERTEXPROCESSING 在记事本中编写着色器 ...
- 通过settings.db自定义Android系统默认设置
Android的系统设置数据存放在/data/data/com.android.providers.settings/databases/settings.db 中 数据库结构如下: 数据库中的默认数 ...
- 【CoreData】多个数据库使用
在实际开发中,往往需要每个模块使用不同数据库,而CoreData也具备这样的功能,使用起来也很方便: 首先我们创建2个模型文件(School和Educationist) // 1.创建模型文件 (相当 ...
- Android jni helloworld
新建Android项目,设置布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android& ...
- objective-c系列-@Property&点语法
//解释 property后边的圆括号中的修饰词的含义: // nonatomic 非线程安全 非原子操作 特点是: 操作变量的效率高 // atomic ...
- iOS 跳转到系统的设置界面
跳到健康设置 上网找了一下 你会发现很难找到.代码如下 不信你试试 . NSURL *url = [NSURL URLWithString:@"prefs:root=Privacy& ...