fix: 规则保存增强错误提示 + 成功提示

- handleSaveRule 添加成功 toast 提示
- catch 块区分 401/404/网络错误给出具体提示
- 404 时提示「接口不存在,请确认后端已部署最新版本」

Made-with: Cursor
This commit is contained in:
卡若
2026-03-15 19:46:51 +08:00
parent 64db4927ea
commit 2ebcd0fd70
3 changed files with 28 additions and 21 deletions

View File

@@ -302,13 +302,20 @@ export function UsersPage() {
try {
if (editingRule) {
const data = await put<{ success?: boolean; error?: string }>('/api/db/user-rules', { id: editingRule.id, ...ruleForm })
if (!data?.success) { toast.error('更新失败: ' + (data?.error || '')); return }
if (!data?.success) { toast.error('更新失败: ' + (data?.error || '未知错误')); return }
toast.success('规则已更新')
} else {
const data = await post<{ success?: boolean; error?: string }>('/api/db/user-rules', ruleForm)
if (!data?.success) { toast.error('创建失败: ' + (data?.error || '')); return }
if (!data?.success) { toast.error('创建失败: ' + (data?.error || '未知错误')); return }
toast.success('规则已创建')
}
setShowRuleModal(false); loadRules()
} catch { toast.error('保存失败') } finally { setIsSaving(false) }
} catch (err) {
const e = err as Error & { status?: number }
if (e?.status === 401) toast.error('登录已过期,请重新登录')
else if (e?.status === 404) toast.error('接口不存在,请确认后端已部署最新版本')
else toast.error('保存失败: ' + (e?.message || '网络错误'))
} finally { setIsSaving(false) }
}
async function handleDeleteRule(id: number) {