国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Nodejs高擴展性的模板引擎 functmpl簡介

2019-11-19 17:37:27
字體:
來源:轉載
供稿:網友

關于functmpl

functmpl 是一個基于JavaScript/Nodejs的高擴展性的模板引擎

模板格式

<#包含/>

如果想在一個模板中插入另一個模板,可以使用<#包含/>

比如插入模板 a.ftl :

<#"a.ftl"/>

<@功能/>

除了輸出變量、包含模板外,也可以加入更多自定義的功能,比如:枚舉、賦值

但額外的功能需要自定義。

自定功能的具體格式為

<@功能名稱 參數名=參數值/>
<@功能名稱 參數名=參數值>
    子節點
</>
其中,參數名/參數值可以沒有或者含有多對。

參數值可以是變量名,或者是JSON

子節點內容可以是普通內容、<=輸出/>、<#包含/>或者<@功能/>

<`表達式`>

如果只是執行表達式,可以使用<`表達式`>

<`=輸出`>

如果想輸出一個變量的值,可以使用<=輸出/>

比如輸出變量 val 的值

</`=val/`>

如何使用

獲得functmpl

使用npm 或者 git

npm install functmplgit clone git@github.com:wangchenxunum/functmpl.gitgit 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 {    //讀取文件失敗  }});

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 江口县| 武邑县| 宁化县| 达拉特旗| 莱州市| 华宁县| 文水县| 秭归县| 竹溪县| 广德县| 黔南| 班玛县| 治县。| 潞城市| 阿巴嘎旗| 衡山县| 新泰市| 西青区| 连州市| 托克托县| 额尔古纳市| 望城县| 蓬溪县| 和田县| 鄂伦春自治旗| 河北省| 沧州市| 吉水县| 偃师市| 平舆县| 冷水江市| 名山县| 安岳县| 牡丹江市| 柳河县| 浙江省| 四子王旗| 南阳市| 遂溪县| 商河县| 老河口市|