fix: sync rules, words

This commit is contained in:
Gabe
2025-10-17 01:19:24 +08:00
parent 32c6d45cb0
commit 9a8e24f590
2 changed files with 20 additions and 2 deletions

View File

@@ -1,16 +1,25 @@
import { STOKEY_WORDS, KV_WORDS_KEY } from "../config";
import { useCallback, useMemo } from "react";
import { useStorage } from "./Storage";
import { debounceSyncMeta } from "../libs/storage";
const DEFAULT_FAVWORDS = {};
export function useFavWords() {
const { data: favWords, save } = useStorage(
const { data: favWords, save: saveWords } = useStorage(
STOKEY_WORDS,
DEFAULT_FAVWORDS,
KV_WORDS_KEY
);
const save = useCallback(
(objOrFn) => {
saveWords(objOrFn);
debounceSyncMeta(KV_WORDS_KEY);
},
[saveWords]
);
const toggleFav = useCallback(
(word) => {
save((prev) => {

View File

@@ -2,18 +2,27 @@ import { STOKEY_RULES, DEFAULT_RULES, KV_RULES_KEY } from "../config";
import { useStorage } from "./Storage";
import { checkRules } from "../libs/rules";
import { useCallback } from "react";
import { debounceSyncMeta } from "../libs/storage";
/**
* 规则 hook
* @returns
*/
export function useRules() {
const { data: list = [], save } = useStorage(
const { data: list = [], save: saveRules } = useStorage(
STOKEY_RULES,
DEFAULT_RULES,
KV_RULES_KEY
);
const save = useCallback(
(objOrFn) => {
saveRules(objOrFn);
debounceSyncMeta(KV_RULES_KEY);
},
[saveRules]
);
const add = useCallback(
(rule) => {
save((prev) => {