feat: toggle log ws

This commit is contained in:
GyDi
2022-09-20 22:15:28 +08:00
parent 3bd9287c5d
commit 4213ee660f
4 changed files with 72 additions and 12 deletions

View File

@@ -5,15 +5,20 @@ import { listen } from "@tauri-apps/api/event";
import { getInformation } from "@/services/api";
import { getClashLogs } from "@/services/cmds";
import { atomLogData } from "@/services/states";
import useLogToggle from "./use-log-toggle";
const MAX_LOG_NUM = 1000;
// setup the log websocket
export default function useLogSetup() {
const [refresh, setRefresh] = useState({});
const [enableLog] = useLogToggle();
const setLogData = useSetRecoilState(atomLogData);
useEffect(() => {
if (!enableLog) return;
getClashLogs().then(setLogData);
let ws: WebSocket = null!;
@@ -41,5 +46,5 @@ export default function useLogSetup() {
ws?.close();
unlisten?.then((fn) => fn());
};
}, [refresh]);
}, [refresh, enableLog]);
}