利用V8封装ctemplate,期望让模版加速日常开发

通过几天紧张有序的资料整理,终于动手把ctemplate用V8进行了JS式的封装,现在JS也能用上高效的模版系统了,先看使用范例:

<test.js>
var users = [{Name:"Mrs. W",Address:"广州"},{Name:"Mrs. L",Address:"北京"}];
var tplFileName = "test.tpl";
var outFileName = "test.txt";
var dict = {
	Name1:"Stand by you.",
	Int32:33,
	Float:Date.now(),
	Users:users
}
ctemplate.render(dict,tplFileName,outFileName);
//IO test
ctemplate.write("json.txt",JSON.stringify({Name:323,Wiff:true}));
var txt = ctemplate.read("json.txt");
ctemplate.log(txt);
var obj = JSON.parse(txt);
ctemplate.log(obj.Name);
<test.tpl>
{{Name1}}:{{Int32}}
{{Float}}

{{!loop}}
{{#Users}}
{{Name}} - {{Address}}
{{/Users}}

<运行>
matty.exe test.js

运行效果可 下载,解压后,运行test.bat。如果需要打算修改或者再度扩展,请至 这里Clone一份

*此次封装可用的JS API:
ctemplate.render(obj,tplFileName,outFileName);//obj为简单对象,对应ctemplate中的字典,渲染模版函数
ctemplate.log(text);//简单日志打印
ctemplate.read(fileName);//读文本文件,返回文本内容
ctemplate.write(fileName,text);//写文本文件


参考文章:
使用 Google V8 引擎开发可定制的应用程序
V8 实现 ECMA 5 Mozilla 的一些特性
使用google ctemplate循环输出多段

你可能感兴趣的:(V8,ctemplate)