jrshikoku/stateBox/useFavoriteStation.js
2024-03-15 18:03:33 +00:00

38 lines
887 B
JavaScript

import React, {
createContext,
useContext,
useState,
useEffect,
useLayoutEffect,
} from "react";
import { AS } from "../storageControl";
const initialState = {
favoriteStation: [],
setFavoriteStation: () => {},
};
const FavoriteStationContext = createContext(initialState);
export const useFavoriteStation = () => {
return useContext(FavoriteStationContext);
};
export const FavoriteStationProvider = ({ children }) => {
const [favoriteStation, setFavoriteStation] = useState([]);
useEffect(() => {
AS.getItem("favoriteStation")
.then((d) => {
const returnData = JSON.parse(d);
setFavoriteStation(returnData);
})
.catch((d) => console.log(d));
}, []);
return (
<FavoriteStationContext.Provider
value={{ favoriteStation, setFavoriteStation }}
>
{children}
</FavoriteStationContext.Provider>
);
};