這星期做了乙個資料統計系統,基於需求便使用了乙個模板引擎來渲染資料.
在這裡模板引擎同後端的不太一樣,主要是前端在開發過程中,對於資料處理之後插入到html的過程中使用到的工具.
由於系統是迷你型的,在一通搜尋之後便決定採用arttemplate.
arttemplate具有如下特點
常見的模板引擎還有handlebar,mustache,jade等,我只試用過handlebar,個人感覺它太過於沉重,配置起來繁瑣,並不適合小專案的資料渲染.
arttemplate提供了兩種語法選擇,原生語法和簡潔語法
簡潔語法
}}}
}. }
}}
原生語法
<%if (admin)%>
<%}%>
模板引擎的原理是基於正規表示式,對字串進行分析處理.
在兩種語法中,簡介語法易讀性更好,用起來比較順手,比原生語法只多了幾k而已,推薦實用簡潔語法
基本的用法不在此介紹,官網的鏈結寫的很詳細.主要語法如下.
var template = require('art-template');
var data = ;
var html = template(__dirname + '/index/main', data);
最後貼乙個好用的功能------過濾器
在arttemplate中定義為helper,也就是輔助器.這種工具我之前在寫angular也使用到過,我覺得像ng中命名為過濾器更適合.它本意就是乙個資料的過濾器,在過濾器中定義一些方法,使得渲染到頁面的資料是你所需要的.
有點抽象,先貼乙個官方的demo,是乙個日期的過濾器.
上面的例子是完整的乙個日期過濾器的例子,有需要直接複製使用即可.我自己在專案中是用到的是比較簡單一點的,乙個根據資料顯示的不同輸出對應的資料.
核心**如下
就是乙個簡單的資料轉換器,後面針對所有的對應關係將其寫成了乙個物件,再進行過濾
var typeopt =
template.helper('typefilter', function (type) }}
以上是helper的內容
最後arttemplate還有乙個include的功能,類似php的include函式,不多介紹.
輕量級規則引擎QLExpress
qlexpress 1 規則語言解析 自然語言 程式語言 可執行語言 2 規則動態配置 3 上線和下線管理 費用科目 物流訂單.倉儲tp,倉儲費 物流訂單.重量 0.5 if 物流訂單.重量 5 then else 費用科目 物流訂單.包裝tp,包裝費 物流訂單.重量 2.5 public clas...
QAdmin輕量級後台模板
基於layui框架與vue.js構建 輕量不複雜 簡潔不簡單 npm i qadmin qadmin站長之家 dist 構建後的 qadmin html 經典版 data 模擬資料目錄 menu.json 左側選單 static 靜態資源 admin 後台資源目錄 js js目錄 config.js...
輕量級重量級
輕量級重量級某種程度上是以啟動程式需要的資源來決定。比如,ejb啟動的時候,需要消耗大量的資源,記憶體,cpu等,所以是重量級。而spring則不,所以是輕量級框架。量級主要是看對容器的依賴性所決定的,依賴性越小,越輕量.ejb往往內部做了很多服務,網上的說法是買一得三 而且你不想要就不行!比方說我...