Open thonatos opened 6 years ago
已经在 #69 中引入了,但只在 POST topic/create 中使用了。还有遗留的工作是 render validate error.
这一块有人在跟进吗?egg-validate 不能自定义错误提示文字?
@sinchang addRule
实现才是正经做法(忽略我刚瞎写的)
const Parameter = require('parameter');
const parameter = new Parameter();
function checkAge(rule, value) {
if (typeof value !== 'number') {
return this.t('年龄必须是数字');
}
if (value > 100) {
return this.t('年龄不能大于 200');
}
if (rule.rule) {
return this.validate(rule.rule, value);
}
}
parameter.addRule('age', checkAge)
const data = {
name: 'foo',
age: 'yibai',
// age: 200,
};
const rule = {
name: 'string',
age: 'age',
};
const errors = parameter.validate(rule, data);
console.log(errors)
// [ { message: '年龄不能大于 200', code: 'invalid', field: 'age' } ]
// [ { message: '年龄必须是数字', code: 'invalid', field: 'age' } ]
i18n 那个?我之前提了 RFC 但后面没时间搞
好的好的,去看看,有时间搞一下~