From c716cf79ede0db947c462f88c54764fb72eaf17b Mon Sep 17 00:00:00 2001 From: BTMuli Date: Sat, 28 Feb 2026 11:35:53 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=92=EF=B8=8F=20=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=95=B0=E6=8D=AE=E7=9B=AE=E5=BD=95=E9=80=89?= =?UTF-8?q?=E5=8F=96&=E6=97=A7=E7=9B=AE=E5=BD=95=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/pageConfig/tc-dataDir.vue | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/components/pageConfig/tc-dataDir.vue b/src/components/pageConfig/tc-dataDir.vue index 9ceaa6a8..e72fbcae 100644 --- a/src/components/pageConfig/tc-dataDir.vue +++ b/src/components/pageConfig/tc-dataDir.vue @@ -109,7 +109,7 @@ onMounted(async () => { async function confirmCUD(): Promise { const oriDir = userDir.value; - const changeCheck = await showDialog.check("确认修改用户数据路径吗?"); + const changeCheck = await showDialog.check("确认修改用户数据路径吗?", "请选取空目录"); if (!changeCheck) { showSnackbar.cancel("已取消修改"); return; @@ -123,11 +123,24 @@ async function confirmCUD(): Promise { showSnackbar.warn("路径未修改!"); return; } + const dirRead = await readDir(dir); + if (dirRead.length !== 0) { + showSnackbar.warn("请选择空目录"); + return; + } userDir.value = dir; await TGSqlite.saveAppData("userDir", dir); await backUpUserData(dir); showSnackbar.success("已修改用户数据路径!"); const delCheck = await showDialog.check("是否删除原用户数据目录?"); + const delDirRead = await readDir(oriDir); + if (delDirRead.some((i) => i.isDirectory)) { + const check = await showDialog.check(`检测到子目录,确定删除?`, oriDir); + if (!check) { + showSnackbar.cancel(`取消删除原数据目录`); + return; + } + } if (delCheck) { await remove(oriDir, { recursive: true }); showSnackbar.success("已删除原用户数据目录!");