✨ 增加打开数据目录按钮
This commit is contained in:
parent
32555d45b1
commit
0b4824975a
@ -1,13 +1,7 @@
|
|||||||
import { app, dialog, ipcMain } from "electron";
|
import {app, dialog, ipcMain, shell} from "electron";
|
||||||
import {clearConfig, getConfig, saveConfig} from "../storage/config";
|
import {clearConfig, getConfig, saveConfig} from "../storage/config";
|
||||||
import {clearVersion, listVersion} from "../storage/version";
|
import {clearVersion, listVersion} from "../storage/version";
|
||||||
import {
|
import {genIniConfig, genTomlConfig, stopFrpcProcess} from "./frpc";
|
||||||
generateConfig,
|
|
||||||
genIniConfig,
|
|
||||||
genTomlConfig,
|
|
||||||
stopFrpcProcess
|
|
||||||
} from "./frpc";
|
|
||||||
import { exec } from "child_process";
|
|
||||||
import {clearProxy, insertProxy, listProxy} from "../storage/proxy";
|
import {clearProxy, insertProxy, listProxy} from "../storage/proxy";
|
||||||
import path from "path";
|
import path from "path";
|
||||||
import fs from "fs";
|
import fs from "fs";
|
||||||
@ -258,4 +252,17 @@ export const initConfigApi = win => {
|
|||||||
event.reply("Config.clearAll.hook", {});
|
event.reply("Config.clearAll.hook", {});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
ipcMain.on("config.openDataFolder", async (event, args) => {
|
||||||
|
const userDataPath = app.getPath("userData");
|
||||||
|
shell.openPath(userDataPath).then((errorMessage) => {
|
||||||
|
if (errorMessage) {
|
||||||
|
console.error('Failed to open Logger:', errorMessage);
|
||||||
|
event.reply("Config.openDataFolder.hook", false);
|
||||||
|
} else {
|
||||||
|
console.log('Logger opened successfully');
|
||||||
|
event.reply("Config.openDataFolder.hook", true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
@ -34,6 +34,7 @@ import fileOpenRounded from "@iconify-icons/material-symbols/file-open-rounded";
|
|||||||
import attachMoneyRounded from "@iconify-icons/material-symbols/attach-money-rounded";
|
import attachMoneyRounded from "@iconify-icons/material-symbols/attach-money-rounded";
|
||||||
import volunteerActivismSharp from "@iconify-icons/material-symbols/volunteer-activism-sharp";
|
import volunteerActivismSharp from "@iconify-icons/material-symbols/volunteer-activism-sharp";
|
||||||
import description from "@iconify-icons/material-symbols/description";
|
import description from "@iconify-icons/material-symbols/description";
|
||||||
|
import folderRounded from "@iconify-icons/material-symbols/folder-rounded";
|
||||||
|
|
||||||
addIcon("cloud", Cloud);
|
addIcon("cloud", Cloud);
|
||||||
addIcon("rocket-launch-rounded", RocketLaunchRounded);
|
addIcon("rocket-launch-rounded", RocketLaunchRounded);
|
||||||
@ -68,4 +69,5 @@ addIcon("file-open-rounded", fileOpenRounded);
|
|||||||
addIcon("attach-money-rounded", attachMoneyRounded);
|
addIcon("attach-money-rounded", attachMoneyRounded);
|
||||||
addIcon("volunteer-activism-sharp", volunteerActivismSharp);
|
addIcon("volunteer-activism-sharp", volunteerActivismSharp);
|
||||||
addIcon("description", description);
|
addIcon("description", description);
|
||||||
|
addIcon("folder-rounded", folderRounded);
|
||||||
|
|
||||||
|
@ -257,6 +257,15 @@ onMounted(() => {
|
|||||||
ElMessageBox.alert(data, `提示`);
|
ElMessageBox.alert(data, `提示`);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
ipcRenderer.on("Config.openDataFolder.hook", (event, args) => {
|
||||||
|
if (args) {
|
||||||
|
ElMessage({
|
||||||
|
type: "success",
|
||||||
|
message: "打开数据目录成功"
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
const handleSelectFile = (type: number, ext: string[]) => {
|
const handleSelectFile = (type: number, ext: string[]) => {
|
||||||
@ -371,17 +380,28 @@ const handleResetConfig = () => {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 打开数据目录
|
||||||
|
*/
|
||||||
|
const handleOpenDataFolder = useDebounceFn(() => {
|
||||||
|
ipcRenderer.send("config.openDataFolder");
|
||||||
|
}, 1000);
|
||||||
|
|
||||||
onUnmounted(() => {
|
onUnmounted(() => {
|
||||||
ipcRenderer.removeAllListeners("Config.getConfig.hook");
|
ipcRenderer.removeAllListeners("Config.getConfig.hook");
|
||||||
ipcRenderer.removeAllListeners("Config.saveConfig.hook");
|
ipcRenderer.removeAllListeners("Config.saveConfig.hook");
|
||||||
ipcRenderer.removeAllListeners("Config.versions.hook");
|
ipcRenderer.removeAllListeners("Config.versions.hook");
|
||||||
ipcRenderer.removeAllListeners("Config.exportConfig.hook");
|
ipcRenderer.removeAllListeners("Config.exportConfig.hook");
|
||||||
ipcRenderer.removeAllListeners("Config.clearAll.hook");
|
ipcRenderer.removeAllListeners("Config.clearAll.hook");
|
||||||
|
ipcRenderer.removeAllListeners("Config.openDataFolder.hook");
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
<div class="main">
|
<div class="main">
|
||||||
<breadcrumb>
|
<breadcrumb>
|
||||||
|
<el-button plain type="primary" @click="handleOpenDataFolder">
|
||||||
|
<IconifyIconOffline icon="folder-rounded" />
|
||||||
|
</el-button>
|
||||||
<el-button plain type="primary" @click="handleResetConfig">
|
<el-button plain type="primary" @click="handleResetConfig">
|
||||||
<IconifyIconOffline icon="deviceReset" />
|
<IconifyIconOffline icon="deviceReset" />
|
||||||
</el-button>
|
</el-button>
|
||||||
|
@ -37,6 +37,7 @@ const refreshStatus = ref(false);
|
|||||||
const logLoading = ref(true);
|
const logLoading = ref(true);
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
|
console.log('logger mounted')
|
||||||
ipcRenderer.send("logger.getLog");
|
ipcRenderer.send("logger.getLog");
|
||||||
ipcRenderer.on("Logger.getLog.hook", (event, args) => {
|
ipcRenderer.on("Logger.getLog.hook", (event, args) => {
|
||||||
// console.log("日志", args, args.indexOf("\n"));
|
// console.log("日志", args, args.indexOf("\n"));
|
||||||
@ -89,7 +90,9 @@ const refreshLog = useDebounceFn(() => {
|
|||||||
}, 300);
|
}, 300);
|
||||||
|
|
||||||
onUnmounted(() => {
|
onUnmounted(() => {
|
||||||
|
console.log('logger unmounted')
|
||||||
ipcRenderer.removeAllListeners("Logger.getLog.hook");
|
ipcRenderer.removeAllListeners("Logger.getLog.hook");
|
||||||
|
ipcRenderer.removeAllListeners("Logger.openLog.hook");
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
|
Loading…
Reference in New Issue
Block a user