Advertisement
Guest User

Untitled

a guest
Mar 23rd, 2022
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import { useState } from "react/cjs/react.development";
  2. import { createContext, useEffect } from "react/cjs/react.production.min";
  3.  
  4. export const TodoContext = createContext();
  5.  
  6. export const TodoProvider = ({ children }) => {
  7.   const [todos, setTodos] = useState([]);
  8.  
  9.   useEffect(() => {
  10.     setTodos(JSON.parse(localStorage.getItem("todoArray")));
  11.   }, []);
  12.  
  13.   useEffect(() => {
  14.     localStorage.setItem("todoArray", JSON.stringify(todos));
  15.   }, [todos]);
  16.  
  17.   let props = {
  18.     todos,
  19.     removeTodo: (inputId) =>
  20.       setTodos((prevTodos) => prevTodos.filter(({ id }) => inputId === id)),
  21.     addTodo: (inputObj) => setTodos((prevTodos) => [...prevTodos, inputObj]),
  22.   };
  23.  
  24.   return <TodoContext.Provider value={props}>{children}</TodoContext.Provider>;
  25. };
  26.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement