AmazeUI 推荐使用 handlebars 但是handlebars的if不太好用,需要自己写helper
通过恒生做的滕州中心医院学习到使用国产的juicer 文档也比较齐全
学习恒生的方法,定制juicer 自定义模板语法边界符
/*==================================================================================================================
* juicer 自定义配置配置和方法注册
* ===============================================================================================================*/
(function () {
// juicer标签自定义
juicer.set({
‘tag::operationOpen‘: ‘[@‘,
‘tag::operationClose‘: ‘]‘,
‘tag::interpolateOpen‘: ‘$[‘,
‘tag::interpolateClose‘: ‘]‘,
‘tag::noneencodeOpen‘: ‘[email protected][‘,//不要使用$$不然会和 $选择器冲突
‘tag::noneencodeClose‘: ‘]‘,
‘tag::commentOpen‘: ‘[#‘,
‘tag::commentClose‘: ‘]‘
});
/*注册juicer函数*/
//计算募捐进度,参数为 用逗号隔开的需要计算的两个数字
juicer.register(‘completedPrate‘, function (para) {
var paras = para.split(‘,‘);
var prate = (Number(paras[0]) / Number(paras[1]) * 100).toFixed(2);
if (prate >= 100) {
prate = "100.00";
}
return prate + ‘%‘;
});
//计算募捐进度
juicer.register(‘donateCompleted‘, function (x, y) {
var prate;
if (x === 0) {
prate = 0;
} else {
prate = (Number(x) / Number(y) * 100).toFixed(2);
if (prate >= 100) {
prate = "100.00";
}
}
return prate + ‘%‘;
});
//四舍五入保留N位小数 参数为需要处理的数字和需要保留的小数位数
juicer.register(‘numberToFixed‘, function (num, bit) {
return Number(num).toFixed(Number(bit));
});
})();