From dc285fbb13fa6d5a63a463f6b898c42d5379b7b7 Mon Sep 17 00:00:00 2001 From: Yevhenii Lukashov <115802889+EuJinnLucaShow@users.noreply.github.com> Date: Wed, 3 Jan 2024 13:07:16 +0200 Subject: [PATCH] sun --- src/App.js | 2 ++ src/components/TodoList.jsx | 13 ++++++++++--- src/redux/operations.js | 1 - src/redux/selectors.js | 2 ++ 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/App.js b/src/App.js index 65f6992..d23b12f 100644 --- a/src/App.js +++ b/src/App.js @@ -1,3 +1,5 @@ +import React from 'react'; +import 'react-toastify/dist/ReactToastify.css'; import InputForm from 'components/InputForm'; import Title from 'components/Title'; import TodoList from 'components/TodoList'; diff --git a/src/components/TodoList.jsx b/src/components/TodoList.jsx index d113859..9c4129a 100644 --- a/src/components/TodoList.jsx +++ b/src/components/TodoList.jsx @@ -6,6 +6,7 @@ import TodoItem from './TodoItem'; import { selectTodo } from 'redux/selectors'; import { fetchTodos, sendTodos } from 'redux/operations'; import Pagination from '../utils/Pagination'; +import { toast } from 'react-toastify'; const PAGE_SIZE = 5; @@ -25,7 +26,11 @@ const TodoList = () => { }, [currentPage, todos]); useEffect(() => { - dispatch(fetchTodos()); + toast.promise(dispatch(fetchTodos()), { + pending: 'TODO List is pending', + success: 'TODO List resolved 👌', + error: 'TODO List rejected 🤯', + }); }, [dispatch]); const handlePageChange = ({ selected }) => { @@ -45,8 +50,10 @@ const TodoList = () => { const [removed] = items.splice(result.source.index, 1); items.splice(result.destination.index, 0, removed); setItems(items); - const reversed = [...items].reverse(); - dispatch(sendTodos(reversed)); + console.log(items); + console.log(todos); + // const reversed = [...items].reverse(); + // dispatch(sendTodos(reversed)); }; return ( diff --git a/src/redux/operations.js b/src/redux/operations.js index ef414f7..b45a47f 100644 --- a/src/redux/operations.js +++ b/src/redux/operations.js @@ -57,7 +57,6 @@ export const editTodo = createAsyncThunk( export const sendTodos = createAsyncThunk( 'todos/sendTodos', async (todosArray, thunkAPI) => { - console.log(todosArray); try { const response = await axios.post('/save-todos', todosArray); return response.data; diff --git a/src/redux/selectors.js b/src/redux/selectors.js index abf81ff..e086d22 100644 --- a/src/redux/selectors.js +++ b/src/redux/selectors.js @@ -1 +1,3 @@ export const selectTodo = state => state.todos.todos; +export const isLoading = state => state.todos.isLoading; +export const error = state => state.todos.error;