0
点赞
收藏
分享

微信扫一扫

Taro 本地储存storage hook 封装

IT程序员 2022-05-05 阅读 23
import { setStorageSync, getStorageSync, removeStorageSync } from "@tarojs/taro";
import { useCallback, useState } from "react";



export function useStorage() {
    const [historyStorage, setStorage] = useState([])

    const useSetStorage = useCallback((value) => {
        const historyItem = Array.from(new Set(historyStorage.concat([value])))
        setStorage(historyItem)
        setStorageSync('history', historyItem)
    }, [historyStorage])

    const useGetStorage = useCallback(() => {
        setStorage(getStorageSync('history') || [])
    }, [])

    const useRemoveStorage = useCallback(() => {
        setStorage([])
        removeStorageSync('history')

    }, [])

    return {
        historyStorage,
        useSetStorage,
        useGetStorage,
        useRemoveStorage
    }
}
举报

相关推荐

0 条评论