```
feat(background): 添加删除应用功能 - 添加DELETE /apps/:id API端点用于删除指定应用 - 实现deleteApp函数,支持文件和数据的完整删除 - 在getApps函数中增加文件存在性验证,自动清理无效应用记录 - 优化appsMutex使用,确保并发安全的数据操作 - 添加文件路径验证和错误处理机制 feat(frontend): 实现前端删除应用交互功能 - 将deleteApp函数改为异步处理,支持API调用 - 添加确认对话框提升用户体验 - 实现DELETE请求发送和响应处理 - 添加错误处理和用户反馈提示 - 删除成功后自动刷新应用列表 ```
This commit is contained in:
34
script.js
34
script.js
@@ -238,11 +238,39 @@ async function uploadApp() {
|
||||
}
|
||||
|
||||
// 删除App函数
|
||||
function deleteApp(appId) {
|
||||
// 显示确认对话框,包含特殊问题验证
|
||||
if (!confirm('如果确定删除此APP,请将矩阵 A = [[3,1,0],[1,2,1],[0,1,1]]的特征值、特征向量,并验证A是正定矩阵的解题步骤做出来,然后我也没做')) {
|
||||
async function deleteApp(appId) {
|
||||
// 显示确认对话框
|
||||
if (!confirm('确定要删除这个应用吗?此操作不可撤销!')) {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
// 发送DELETE请求删除App
|
||||
const response = await fetch(`${API_BASE_URL}/apps/${appId}`, {
|
||||
method: 'DELETE',
|
||||
headers: {
|
||||
'Accept': 'application/json'
|
||||
}
|
||||
});
|
||||
|
||||
// 检查响应状态
|
||||
if (!response.ok) {
|
||||
throw new Error(`HTTP错误!状态:${response.status}`);
|
||||
}
|
||||
|
||||
const result = await response.json(); // 解析响应数据
|
||||
|
||||
// 处理删除结果
|
||||
if (result.success) {
|
||||
alert('删除成功!');
|
||||
loadAppList(); // 重新加载App列表
|
||||
} else {
|
||||
alert('删除失败:' + (result.message || '未知错误'));
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('删除失败:', error);
|
||||
alert('删除失败:' + error.message);
|
||||
}
|
||||
}
|
||||
|
||||
// 下载App函数
|
||||
|
||||
Reference in New Issue
Block a user