文案上限为20个字符(10个汉字)”产品需求一个小括号,开发实现一下子复杂了很多。
/** 用户名校验 */
const nameValidator = (rule, value, callback) => {
let len = 0;
for (let i = 0; i < value.length; i++) {
if (value.charCodeAt(i) > 127 || value.charCodeAt(i) == 94) {
len += 2;
} else {
len++;
}
}
if (len > 20) return callback('不能超过10位汉字(20字节)');
callback();
};