mirror of
https://github.com/MewoLab/AquaDX.git
synced 2026-10-09 07:00:10 +03:00
25 lines
472 B
TypeScript
25 lines
472 B
TypeScript
import { onMount } from 'svelte';
|
|
|
|
const useLocalStorage = <T>(key: string, initialValue: T) => {
|
|
let value = initialValue;
|
|
|
|
const currentValue = localStorage.getItem(key);
|
|
if (currentValue) value = JSON.parse(currentValue);
|
|
|
|
const save = () => {
|
|
localStorage.setItem(key, JSON.stringify(value));
|
|
};
|
|
|
|
return {
|
|
get value() {
|
|
return value;
|
|
},
|
|
set value(v: T) {
|
|
value = v;
|
|
save();
|
|
},
|
|
};
|
|
};
|
|
|
|
export default useLocalStorage;
|