处理认证和小bug

This commit is contained in:
sijinhui 2024-02-20 13:37:20 +08:00
parent a7aa003183
commit a9ba7d1936
2 changed files with 23 additions and 14 deletions

View File

@ -14,8 +14,9 @@ interface ComponentProps {
setCurrentDate: Dispatch<SetStateAction<Date>>; setCurrentDate: Dispatch<SetStateAction<Date>>;
} }
const maxDate = new Date();
function DateSelectComponent({ currentDate, setCurrentDate }: ComponentProps) { function DateSelectComponent({ currentDate, setCurrentDate }: ComponentProps) {
const maxDate = new Date();
// 增加键盘监听修改日期 // 增加键盘监听修改日期
useEffect(() => { useEffect(() => {
const keydownEvent = (e: KeyboardEvent) => { const keydownEvent = (e: KeyboardEvent) => {

View File

@ -19,11 +19,13 @@ export function isHanZi(input: string): boolean {
/** /**
* *
* @param input * @param input
* @returns {boolean} * @returns {number}
*/ */
export function isPinYin(input: string): boolean { export function isPinYin(input: string): number {
if (!input) {
var list = ['a', 'ai', 'an', 'ang', 'ao', 'ba', 'bai', 'ban', 'bang', 'bao', 'bei', 'ben', return 0;
}
const list = ['a', 'ai', 'an', 'ang', 'ao', 'ba', 'bai', 'ban', 'bang', 'bao', 'bei', 'ben',
'beng', 'bi', 'bian', 'biao', 'bie', 'bin', 'bing', 'bo', 'bu', 'ca', 'cai', 'can', 'cang', 'beng', 'bi', 'bian', 'biao', 'bie', 'bin', 'bing', 'bo', 'bu', 'ca', 'cai', 'can', 'cang',
'cao', 'ce', 'cen', 'ceng', 'cha', 'chai', 'chan', 'chang', 'chao', 'che', 'chen', 'cheng', 'chi', 'cao', 'ce', 'cen', 'ceng', 'cha', 'chai', 'chan', 'chang', 'chao', 'che', 'chen', 'cheng', 'chi',
'chong', 'chou', 'chu', 'chua', 'chuai', 'chuan', 'chuang', 'chui', 'chun', 'chuo', 'ci', 'cong', 'chong', 'chou', 'chu', 'chua', 'chuai', 'chuan', 'chuang', 'chui', 'chun', 'chuo', 'ci', 'cong',
@ -52,28 +54,34 @@ export function isPinYin(input: string): boolean {
'you', 'yu', 'yuan', 'yue', 'yun', 'za', 'zai', 'zan', 'zang', 'zao', 'ze', 'zei', 'zen', 'zeng', 'zha', 'you', 'yu', 'yuan', 'yue', 'yun', 'za', 'zai', 'zan', 'zang', 'zao', 'ze', 'zei', 'zen', 'zeng', 'zha',
'zhai', 'zhan', 'zhang', 'zhao', 'zhe', 'zhei', 'zhen', 'zheng', 'zhi', 'zhong', 'zhou', 'zhu', 'zhua', 'zhai', 'zhan', 'zhang', 'zhao', 'zhe', 'zhei', 'zhen', 'zheng', 'zhi', 'zhong', 'zhou', 'zhu', 'zhua',
'zhuai', 'zhuan', 'zhuang', 'zhui', 'zhun', 'zhuo', 'zi', 'zong', 'zou', 'zu', 'zuan', 'zui', 'zun', 'zuo']; 'zhuai', 'zhuan', 'zhuang', 'zhui', 'zhun', 'zhuo', 'zi', 'zong', 'zou', 'zu', 'zuan', 'zui', 'zun', 'zuo'];
var lowerString = input.toLowerCase(); let lowerString = input.toLowerCase();
var length = lowerString.length; let length = lowerString.length;
var index = -1; let index = -1;
for (var i=0; i<length; i++) { for (var i=0; i<length; i++) {
var name = lowerString.substring(0, i+1); var name = lowerString.substring(0, i+1);
index = list.lastIndexOf(name) > index ? list.lastIndexOf(name) : index; index = list.lastIndexOf(name) > index ? list.lastIndexOf(name) : index;
} }
let result = 0
// 判断当前 lowerString 是不是拼音(lowerString 在 list 中就是;不在就不是) // 判断当前 lowerString 是不是拼音(lowerString 在 list 中就是;不在就不是)
if (index >= 0) { if (index >= 0) {
result += 1
var item = list[index]; var item = list[index];
// 继续处理剩余字符串
lowerString = lowerString.substring(item.length); lowerString = lowerString.substring(item.length);
if (lowerString.length == 0) { if (lowerString.length == 0) {
return true;
} else { } else {
return isPinYin(lowerString); const sub_py = isPinYin(lowerString)
// return arguments.callee(lowerString); if (sub_py) {
result += sub_py
} else {
result = 0
}
} }
} else { } else {
return false; result = 0
} }
return result;
} }
@ -81,5 +89,5 @@ export function isName(input: string): boolean {
if (DENY_LIST.includes(input)) { if (DENY_LIST.includes(input)) {
return false; return false;
} }
return isEmail(input) || (input.length >= 2 && isHanZi(input)) || (input.length >= 4 && isPinYin(input)); return isEmail(input) || (input.length >= 2 && isHanZi(input)) || (isPinYin(input) >= 2);
} }