node安装ejs模块后,在ejs/lib/filters.js文件中有很多常用的方法
如:
exports.upcase = function(str){
return String(str).toUpperCase();
};
使用方法:
<%=: "abcdef" | upcase %>
结果:ABCDEF
自定义filter
如格式化日期:
在filters.js文件加入如下代码即可
exports.format = function (obj, format) {
if (format == undefined) {
format = 'YYYY-MM-DD HH:mm:ss';
}
var ret = moment(obj).format(format);
return ret == 'Invalid date' ? '0000-00-00 00:00:00' : ret;
};
直接修改组件代码不是太好,不利于组件升级
推荐的方法是在app.js中引入ejs后
给ejs对象添加filter即可,如下加粗代码修改
ejs.filters.format = function (obj, format) {
if (format == undefined) {
format = 'YYYY-MM-DD HH:mm:ss';
}
var ret = moment(obj).format(format);
return ret == 'Invalid date' ? '0000-00-00 00:00:00' : ret;
};
使用方法:
<%=: data | format:"YYYY-MM-DD" %>