chore: 新增清理脚本并优化项目配置

1.  新增clean脚本用于清理项目构建产物和缓存
2.  更新.gitignore忽略eslint缓存和src-tauri的target目录
3.  在package.json中添加clean命令
4.  格式化StudentManager组件的回调函数代码
This commit is contained in:
Yukino_fox
2026-07-05 10:47:39 +08:00
parent 1c2cc2e077
commit fbf8079cca
4 changed files with 202 additions and 41 deletions
+53 -41
View File
@@ -289,50 +289,62 @@ export const StudentManager: React.FC<{ canEdit: boolean }> = ({ canEdit }) => {
}
}
const handleDelete = useCallback(async (id: number) => {
if (!(window as any).api) return
if (!canEdit) {
messageApi.error(t("common.readOnly"))
return
}
const res = await (window as any).api.deleteStudent(id)
if (res.success) {
messageApi.success(t("students.deleteSuccess"))
fetchStudents()
emitDataUpdated("students")
} else {
messageApi.error(res.message || t("students.deleteFailed"))
}
}, [canEdit, messageApi, t, fetchStudents])
const handleDelete = useCallback(
async (id: number) => {
if (!(window as any).api) return
if (!canEdit) {
messageApi.error(t("common.readOnly"))
return
}
const res = await (window as any).api.deleteStudent(id)
if (res.success) {
messageApi.success(t("students.deleteSuccess"))
fetchStudents()
emitDataUpdated("students")
} else {
messageApi.error(res.message || t("students.deleteFailed"))
}
},
[canEdit, messageApi, t, fetchStudents]
)
const handleOpenTagEditor = useCallback((student: student) => {
if (!canEdit) {
messageApi.error(t("common.readOnly"))
return
}
setEditingStudent(student)
setTagEditVisible(true)
}, [canEdit, messageApi, t])
const handleOpenTagEditor = useCallback(
(student: student) => {
if (!canEdit) {
messageApi.error(t("common.readOnly"))
return
}
setEditingStudent(student)
setTagEditVisible(true)
},
[canEdit, messageApi, t]
)
const handleOpenAvatarEditor = useCallback((student: student) => {
if (!canEdit) {
messageApi.error(t("common.readOnly"))
return
}
setAvatarStudent(student)
setAvatarValue(student.avatarUrl || null)
setAvatarVisible(true)
}, [canEdit, messageApi, t])
const handleOpenAvatarEditor = useCallback(
(student: student) => {
if (!canEdit) {
messageApi.error(t("common.readOnly"))
return
}
setAvatarStudent(student)
setAvatarValue(student.avatarUrl || null)
setAvatarVisible(true)
},
[canEdit, messageApi, t]
)
const handleOpenGroupEditor = useCallback((student: student) => {
if (!canEdit) {
messageApi.error(t("common.readOnly"))
return
}
setGroupEditStudent(student)
groupForm.setFieldsValue({ group_name: student.group_name || "" })
setGroupEditVisible(true)
}, [canEdit, messageApi, t, groupForm])
const handleOpenGroupEditor = useCallback(
(student: student) => {
if (!canEdit) {
messageApi.error(t("common.readOnly"))
return
}
setGroupEditStudent(student)
groupForm.setFieldsValue({ group_name: student.group_name || "" })
setGroupEditVisible(true)
},
[canEdit, messageApi, t, groupForm]
)
const handleSaveGroup = async () => {
if (!(window as any).api || !groupEditStudent) return