fix: close all connections when change mode

This commit is contained in:
GyDi 2023-05-28 17:07:39 +08:00
parent cafc2060b8
commit 60046abec3
No known key found for this signature in database
GPG Key ID: 9C3AD40F1F99880A

View File

@ -3,7 +3,11 @@ import { useEffect, useMemo } from "react";
import { useLockFn } from "ahooks";
import { useTranslation } from "react-i18next";
import { Button, ButtonGroup, Paper } from "@mui/material";
import { getClashConfig, updateConfigs } from "@/services/api";
import {
closeAllConnections,
getClashConfig,
updateConfigs,
} from "@/services/api";
import { patchClashConfig } from "@/services/cmds";
import { useVerge } from "@/hooks/use-verge";
import { BasePage } from "@/components/base";
@ -29,6 +33,10 @@ const ProxyPage = () => {
const curMode = clashConfig?.mode.toLowerCase();
const onChangeMode = useLockFn(async (mode: string) => {
// 断开连接
if (mode !== curMode && verge?.auto_close_connection) {
closeAllConnections();
}
await updateConfigs({ mode });
await patchClashConfig({ mode });
mutateClash();