dtmpl是一个实用简洁快速的模板引擎。写这个模引擎的原因是因为在ejs里没找到类似angularjs中ng-if和ng-class类似功能的东西,只能用js代码拼接,特别臃肿,所以在实现ejs功能的基础上增加了[?]功能。经测试dtmpl的解析速度不低于ejs,而且写法更灵活,推荐使用
[?age>50:old]
[?opt:<span>kkk</span>]
[#./122.html]
[=name]
[-name]
[for(item of list){]
<span>[=item]</span>
[}]
[<] 会被解析成 [,[>] 会被解析成 ]
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
[#./head.html]
<p class="[?age>10:tt]">111</p>
<p>
[for(item of list){]
<span>[=item]</span>
[}]
</p>
</body>
</html>
<div>head [=name]</div>
var dtmpl = require('dtmpl');
var fs = require('fs');
var obj = {
name:'dwl',
list:[1,2,3,4],
age:27
}
var output = dtmpl.render(fs.readFileSync('./index.html').toString(),obj);
fs.writeFileSync('./dist.html', out);