优化不能修改昵称弹窗
This commit is contained in:
@@ -188,7 +188,7 @@ const UserInfoCardComponent: React.FC<UserInfoCardProps> = ({
|
|||||||
if (!is_current_user) return;
|
if (!is_current_user) return;
|
||||||
if (!nickname_change_status.can_change) {
|
if (!nickname_change_status.can_change) {
|
||||||
return Taro.showToast({
|
return Taro.showToast({
|
||||||
title: `30天内仅可修改4次昵称,${nickname_change_status.next_period_start_time}后可修改`,
|
title: `30天内仅可修改4次昵称,${nickname_change_status.next_period_start_date}后可修改`,
|
||||||
icon: "none",
|
icon: "none",
|
||||||
duration: 2000,
|
duration: 2000,
|
||||||
});
|
});
|
||||||
@@ -619,7 +619,7 @@ const UserInfoCardComponent: React.FC<UserInfoCardProps> = ({
|
|||||||
onCancel={handle_edit_modal_cancel}
|
onCancel={handle_edit_modal_cancel}
|
||||||
validationMessage={
|
validationMessage={
|
||||||
editing_field === "nickname"
|
editing_field === "nickname"
|
||||||
? `请填写 2-24 个字符,不包括 @<>/等无效字符。30 天内可修改 4 次昵称,${nickname_change_status.next_period_start_time} 前还可修改 ${nickname_change_status.remaining_count} 次。`
|
? `请填写 2-24 个字符,不包括 @<>/等无效字符。30 天内可修改 4 次昵称,${nickname_change_status.next_period_start_date} 前还可修改 ${nickname_change_status.remaining_count} 次。`
|
||||||
: "请填写 2-100 个字符"
|
: "请填写 2-100 个字符"
|
||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -96,6 +96,7 @@ export interface NicknameChangeStatus {
|
|||||||
period_start_time: string;
|
period_start_time: string;
|
||||||
next_period_start_time: string;
|
next_period_start_time: string;
|
||||||
days_until_next_period: number;
|
days_until_next_period: number;
|
||||||
|
next_period_start_date?: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 后端球局数据接口
|
// 后端球局数据接口
|
||||||
|
|||||||
@@ -45,6 +45,15 @@ const fetchUserInfoWithLock = async (set) => {
|
|||||||
return fetchUserInfoPromise;
|
return fetchUserInfoPromise;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const getTimeNextDate = (time: string) => {
|
||||||
|
const date = new Date(time);
|
||||||
|
date.setDate(date.getDate() + 1);
|
||||||
|
const year = date.getFullYear();
|
||||||
|
const month = String(date.getMonth() + 1).padStart(2, "0");
|
||||||
|
const day = String(date.getDate()).padStart(2, "0");
|
||||||
|
return `${year}-${month}-${day}`;
|
||||||
|
};
|
||||||
|
|
||||||
export const useUser = create<UserState>()((set) => ({
|
export const useUser = create<UserState>()((set) => ({
|
||||||
user: {},
|
user: {},
|
||||||
fetchUserInfo: () => fetchUserInfoWithLock(set),
|
fetchUserInfo: () => fetchUserInfoWithLock(set),
|
||||||
@@ -68,7 +77,13 @@ export const useUser = create<UserState>()((set) => ({
|
|||||||
checkNicknameChangeStatus: async () => {
|
checkNicknameChangeStatus: async () => {
|
||||||
try {
|
try {
|
||||||
const res = await checkNicknameChangeStatusApi();
|
const res = await checkNicknameChangeStatusApi();
|
||||||
set({ nicknameChangeStatus: res.data });
|
const { next_period_start_time } = res.data;
|
||||||
|
set({
|
||||||
|
nicknameChangeStatus: {
|
||||||
|
...res.data,
|
||||||
|
next_period_start_date: getTimeNextDate(next_period_start_time),
|
||||||
|
},
|
||||||
|
});
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("检查昵称变更状态失败:", error);
|
console.error("检查昵称变更状态失败:", error);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -197,7 +197,7 @@ const EditProfilePage: React.FC = () => {
|
|||||||
if (field === "nickname") {
|
if (field === "nickname") {
|
||||||
if (!nickname_change_status.can_change) {
|
if (!nickname_change_status.can_change) {
|
||||||
return Taro.showToast({
|
return Taro.showToast({
|
||||||
title: `30天内仅可修改4次昵称,${nickname_change_status.next_period_start_time}后可修改`,
|
title: `30天内仅可修改4次昵称,${nickname_change_status.next_period_start_date}后可修改`,
|
||||||
icon: "none",
|
icon: "none",
|
||||||
duration: 2000,
|
duration: 2000,
|
||||||
});
|
});
|
||||||
@@ -828,7 +828,7 @@ const EditProfilePage: React.FC = () => {
|
|||||||
onCancel={handle_edit_modal_cancel}
|
onCancel={handle_edit_modal_cancel}
|
||||||
validationMessage={
|
validationMessage={
|
||||||
editing_field === "nickname"
|
editing_field === "nickname"
|
||||||
? `请填写 2-24 个字符,不包括 @<>/等无效字符。30 天内可修改 4 次昵称,${nickname_change_status.next_period_start_time} 前还可修改 ${nickname_change_status.remaining_count} 次。`
|
? `请填写 2-24 个字符,不包括 @<>/等无效字符。30 天内可修改 4 次昵称,${nickname_change_status.next_period_start_date} 前还可修改 ${nickname_change_status.remaining_count} 次。`
|
||||||
: "请填写 2-100 个字符"
|
: "请填写 2-100 个字符"
|
||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
|
|||||||
Reference in New Issue
Block a user