mirror of
https://github.com/clash-verge-rev/clash-verge-rev
synced 2025-05-05 10:03:43 +08:00
25 lines
572 B
TypeScript
25 lines
572 B
TypeScript
import { useEffect } from "react";
|
|
import { useRecoilState } from "recoil";
|
|
import { atomEnableLog } from "@/services/states";
|
|
|
|
const LOG_KEY = "enable-log";
|
|
|
|
export default function useLogToggle() {
|
|
const [enableLog, setEnableLog] = useRecoilState(atomEnableLog);
|
|
|
|
useEffect(() => {
|
|
try {
|
|
setEnableLog(localStorage.getItem(LOG_KEY) !== "false");
|
|
} catch {}
|
|
}, []);
|
|
|
|
const setter = (enable: boolean) => {
|
|
try {
|
|
localStorage.setItem(LOG_KEY, enable.toString());
|
|
} catch {}
|
|
setEnableLog(enable);
|
|
};
|
|
|
|
return [enableLog, setter];
|
|
}
|