關(guān)于functmpl

創(chuàng)新互聯(lián)的團隊成員不追求數(shù)量、追求質(zhì)量。我們經(jīng)驗豐富并且專業(yè),我們之間合作時就好像一個人,協(xié)同一致毫無保留。成都創(chuàng)新互聯(lián)公司珍視想法,同時也看重過程轉(zhuǎn)化帶來的沖擊力和影響力,在我們眼中,任何細節(jié)都不容小覷。一直致力于為企業(yè)提供從申請域名、網(wǎng)站策劃、網(wǎng)站設(shè)計、成都做商城網(wǎng)站、網(wǎng)站推廣、網(wǎng)站優(yōu)化到為企業(yè)提供個性化軟件開發(fā)等基于互聯(lián)網(wǎng)的全面整合營銷服務(wù)。
functmpl 是一個基于JavaScript/Nodejs的高擴展性的模板引擎
模板格式
<#包含/>
如果想在一個模板中插入另一個模板,可以使用<#包含/>
比如插入模板 a.ftl :
<#"a.ftl"/>
<@功能/>
除了輸出變量、包含模板外,也可以加入更多自定義的功能,比如:枚舉、賦值
但額外的功能需要自定義。
自定功能的具體格式為
<@功能名稱 參數(shù)名=參數(shù)值/>
<@功能名稱 參數(shù)名=參數(shù)值>
子節(jié)點
</>
其中,參數(shù)名/參數(shù)值可以沒有或者含有多對。
參數(shù)值可以是變量名,或者是JSON
子節(jié)點內(nèi)容可以是普通內(nèi)容、<=輸出/>、<#包含/>或者<@功能/>
<`表達式`>
如果只是執(zhí)行表達式,可以使用<`表達式`>
<`=輸出`>
如果想輸出一個變量的值,可以使用<=輸出/>
比如輸出變量 val 的值
<\`=val\`>
如何使用
獲得functmpl
使用npm 或者 git
npm install functmpl git clone git@github.com:wangchenxunum/functmpl.git git clone git@git.oschina.net:wangchenxunum/functmpl.git
引入到Nodejs
let functmpl = require('functmpl');
引入到瀏覽器
<script src="functmpl.js"></script>
模板解析器實例
//創(chuàng)建一個解析器
let ftl = functmpl();
//加入功能處理器
ftl.use(functmpl.func);
//模板解析
ftl.template = '<!DOCTYPE html>\n\
<html>\n\
<head>\n\
<title><`=title`></title>\n\
</head>\n\
<body>\n\
<@enum key="key" value="value" var=list>\n\
<@scope>\n\
<@set key="key" value="1" type="create"/>\n\
<`=key`>:<`=value`><br>\n\
</>\n\
<`=key`>:<`=value`><br>\n\
</>\n\
</body>\n\
</html>'
//設(shè)置模板位置如果使用<#包含/>,必須要有一個基本的相對位置
ftl.filename = 'template.ftl';
//也可以直接讀取模板文件
ftl.loadFile('template.ftl',function(status){
if (status) {
//讀取文件成功,并且已經(jīng)解析
//調(diào)用模板生成數(shù)據(jù)
ftl.parse(function(text){
//當生成完畢后調(diào)用回調(diào)函數(shù)
console.log("生成完成:\n" + text);
},JSON.parse(data.value));
} else {
//讀取文件失敗
}
});
網(wǎng)站標題:Nodejs高擴展性的模板引擎functmpl簡介
當前網(wǎng)址:http://chinadenli.net/article2/gescic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計、定制網(wǎng)站、品牌網(wǎng)站制作、做網(wǎng)站、企業(yè)建站、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)