获取昵称修改状态、优化昵称修改逻辑
This commit is contained in:
@@ -33,7 +33,6 @@ const EditModal: React.FC<EditModalProps> = ({
|
||||
const [isValid, setIsValid] = useState(true);
|
||||
const [isIllegal, setIsIllegal] = useState(false);
|
||||
const [hasIllegal, setHasIllegal] = useState(false);
|
||||
const [canEdit, setCanEdit] = useState(true);
|
||||
// 使用全局键盘状态
|
||||
const {
|
||||
keyboardHeight,
|
||||
@@ -89,15 +88,11 @@ const EditModal: React.FC<EditModalProps> = ({
|
||||
value.length >= 2 &&
|
||||
value.length <= maxLength &&
|
||||
!hasIllegal &&
|
||||
!isIllegal &&
|
||||
canEdit;
|
||||
!isIllegal;
|
||||
setIsValid(valid);
|
||||
}, [
|
||||
value, hasIllegal, isIllegal, canEdit
|
||||
])
|
||||
}, [value, hasIllegal, isIllegal]);
|
||||
|
||||
const handle_save = () => {
|
||||
console.log("savexxxxxxx", isIllegal, hasIllegal, !isValid)
|
||||
if (isIllegal) {
|
||||
Taro.showToast({
|
||||
title: "输入的字符非法",
|
||||
@@ -106,7 +101,6 @@ const EditModal: React.FC<EditModalProps> = ({
|
||||
});
|
||||
return;
|
||||
} else if (hasIllegal) {
|
||||
console.log("hasIllegal")
|
||||
Taro.showToast({
|
||||
title: "内容不能包含@<>/等无效字符",
|
||||
icon: "none",
|
||||
@@ -128,7 +122,6 @@ const EditModal: React.FC<EditModalProps> = ({
|
||||
setValue(initialValue);
|
||||
setHasIllegal(false);
|
||||
setIsIllegal(false);
|
||||
setCanEdit(true);
|
||||
onCancel();
|
||||
};
|
||||
|
||||
@@ -176,12 +169,15 @@ const EditModal: React.FC<EditModalProps> = ({
|
||||
confirmType="done"
|
||||
// autoFocus={true}
|
||||
onConfirm={handle_save}
|
||||
onBlur={(e) => { e.preventDefault() }}
|
||||
onBlur={(e) => {
|
||||
e.preventDefault();
|
||||
}}
|
||||
/>
|
||||
<View className="char_count">
|
||||
<Text
|
||||
className={`count_text ${value.length > maxLength && "un-valid"
|
||||
}`}
|
||||
className={`count_text ${
|
||||
value.length > maxLength && "un-valid"
|
||||
}`}
|
||||
>
|
||||
{value.length}/{maxLength}
|
||||
</Text>
|
||||
@@ -208,8 +204,9 @@ const EditModal: React.FC<EditModalProps> = ({
|
||||
/>
|
||||
<View className="char_count">
|
||||
<Text
|
||||
className={`count_text ${value.length > maxLength && "un-valid"
|
||||
}`}
|
||||
className={`count_text ${
|
||||
value.length > maxLength && "un-valid"
|
||||
}`}
|
||||
>
|
||||
{value.length}/{maxLength}
|
||||
</Text>
|
||||
|
||||
Reference in New Issue
Block a user