{% filter uppercase %}
oh hi, {{ name }}
{% endfilter %}
{% filter replace "." "!" "g" %}
Hi. My name is Paul.
{% endfilter %}
在express中使用:
var swig = require('swig');
app.engine('html', swig.renderFile);
app.set('views', './views');
app.set('view engine', 'html');
swig.setDefaults({cache: false});
和ejs相比我覺得有個好處是和html标簽嵌套使用的時候,不需要分割;
文法:
指派:{{ }}
eg:
{{name}}
{% %}
if:條件語句
{% if x %}{% endif %}
else 和 else if
{% if foo %}
Some content.
{% else if "foo" in bar %}
Content if the array `bar` has "foo" in it.
{% else %}
Fallback content.
{% endif %}
for循環
eg:
{% for num in foo %}
{{ num }}
{% endfor %}
set:設定一個變量
eg:
{% set foo = [0, 1, 2, 3, 4, 5] %} {% for num in foo %}
{{ num }}
{% endfor %}
過濾器:filter:對整個塊應用過濾器
eg:
{% filter uppercase %}
oh hi
{% endfilter %}
轉換為大寫字母
eg:
{% filter replace "." "!" "g" %}
Hi. My name is Paul.
{% endfilter %}
全局查找,将'.'替換成'!'
swig模闆引擎彙總
1. Express中使用swig模闆引擎 2.Swig 使用指南 3.jade to html online
NodeJS中使用swig模闆引擎
NodeJS中的預設引擎是jade有點過于複雜,而且不是以HTML為基礎的,學習成本和前端适應成本都很大.而ejs雖然簡單,但不支援模闆導入,而且效率一般. swig的文法簡單,學習成本很低,符合正常 ...
express+gulp建構項目(五)swig模闆
這裡的檔案負責配置swig模闆引擎. index.js var jsonHash = require('./json_file'); var staticTag = require("./t ...
Handlebars 模闆引擎之前後端用法
前言 不知不覺間,居然已經這麼久沒有寫部落格了,堅持還真是世界上最難的事情啊. 不過我最近也沒閑着,辭工換工.戀愛失戀.深圳北京都經曆了一番,這有起有落的生活實在是太刺激了,就如拿着兩把菜刀剁洋蔥一樣, ...
說說如何用js實作一個模闆引擎
本文同步更新在: https://github.com/whxaxes/blog/issues/4 ,在 github 看文章顯示效果會更好一些. 前言 不知不覺就很長時間沒造過什麼輪子了,以前一直想 ...
Node.js模闆引擎的深入探讨
每次當我想用 node.js 來寫一個 web 相關項目的時候.我總是會陷入無比的糾結.原因是 JavaScript 生态圈裡的模闆引擎實在太多了,但那麼多卻實在找不出一個接近完美的,所謂完美的概念就 ...
node 模闆引擎使用的步奏
//定義模闆引擎 app.engine('html',swig.renderFile);//設定模闆引擎所存放的位置app.set('views','/views');//注冊所使用的模闆引擎app. ...
2 ~ express ~ 模闆引擎的配置與使用
一,建立應用 (一),建立應用,監聽端口 var express = require('express') // 建立app應用 var app = express() app.listen(3000 ...
JavaScript學習筆記(一)——延遲對象、跨域、模闆引擎、彈出層、AJAX示例
一.AJAX示例 AJAX全稱為“Asynchronous JavaScript And XML”(異步JavaScript和XML) 是指一種建立互動式網頁應用的開發技術.改善使用者體驗,實作無重新整理效 ...
推薦13款javascript模闆引擎
javaScript 在生成各種頁面内容時如果能結合一些模闆技術,可以讓邏輯和資料之間更加清晰,本文介紹 X 款 JavaScript 的模闆引擎.(排名不分先後順序) 1. Mustache 基于j ...
随機推薦
Winmail.dat(TNEF) issue on outlook
http://www.dwheeler.com/essays/microsoft-outlook-tnef.html
Oracle connect by 樹查詢之三(超詳細)
查找員工編号為7369的上司: 1 SELECT LEVEL,E.* FROM EMP E CONNECT BY PRIOR E.MGR = E.EMPNO START WITH E.EMPNO = ...
jquery ajax 文法
$("select[name=type_id]").change(function(e) { var val=$(this).val(); $.ajax({ ...
MySQL 序列 AUTO_INCREMENT
MySQL序列是一組整數:1, 2, 3, ...,由于一張資料表隻能有一個字段自增主鍵, 如果你想實作其他字段也實作自動增加,就可以使用MySQL序列來實作. 本章我們将介紹如何使用MySQL的序列 ...
RabbitMQ.NET In Window Service
工作中要求使用RabbitMQ,以Windows Service 模式啟動,中間有遇到一些問題,網上大部分部落格有誤導傾向, 在這裡做一個簡單的記錄,以免後面的人走坑: 1. 自動重新連接配接,不需要手動處 ...
[Ubuntu]明明白白安裝中文字型
Ubuntu 6.06 dapper對中文的支援應該說是一向不錯的,包括現在預設安裝就包含了scim輸入法.然而,一般安裝的ubuntu雖然能夠顯示.輸入中文了,但總覺 得所顯示的中文像歪瓜裂棗,很是 ...
建立Java不可變類
不可變(immutable)類的意思是建立該類的執行個體後,該執行個體的Field是不可改變的,Java提供的8個包裝類和java.lang.String類都是不可變類. 如果需要建立自定義的不可變類,可遵守 ...
關于Gateway
為什麼要有gateway?就是因為如果沒有,很多的功能需要在在每個微服務中都實作,這樣成本很高.
放大的X 【杭電-2655】 附題
/* 放大的X Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Su ...
四. Java繼承和多态4. 多态和動态綁定
在Java中,父類的變量可以引用父類的執行個體,也可以引用子類的執行個體. 請讀者先看一段代碼: public class Demo { public static void main(String[] ar ...