您好,登錄后才能下訂單哦!
關于functmpl
functmpl 是一個基于JavaScript/Nodejs的高擴展性的模板引擎
模板格式
<#包含/>
如果想在一個模板中插入另一個模板,可以使用<#包含/>
比如插入模板 a.ftl :
<#"a.ftl"/>
<@功能/>
除了輸出變量、包含模板外,也可以加入更多自定義的功能,比如:枚舉、賦值
但額外的功能需要自定義。
自定功能的具體格式為
<@功能名稱 參數名=參數值/>
<@功能名稱 參數名=參數值>
子節點
</>
其中,參數名/參數值可以沒有或者含有多對。
參數值可以是變量名,或者是JSON
子節點內容可以是普通內容、<=輸出/>、<#包含/>或者<@功能/>
<`表達式`>
如果只是執行表達式,可以使用<`表達式`>
<`=輸出`>
如果想輸出一個變量的值,可以使用<=輸出/>
比如輸出變量 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>
模板解析器實例
//創建一個解析器 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>' //設置模板位置如果使用<#包含/>,必須要有一個基本的相對位置 ftl.filename = 'template.ftl'; //也可以直接讀取模板文件 ftl.loadFile('template.ftl',function(status){ if (status) { //讀取文件成功,并且已經解析 //調用模板生成數據 ftl.parse(function(text){ //當生成完畢后調用回調函數 console.log("生成完成:\n" + text); },JSON.parse(data.value)); } else { //讀取文件失敗 } });
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。