Todo.js - Krutik
unknown
javascript
4 years ago
1.5 kB
5
Indexable
import React, { useState } from "react"; import { FaMoneyCheckAlt, FaDollarSign, FaTrash } from "react-icons/fa"; import { toast } from "react-toastify"; import "react-toastify/dist/ReactToastify.css"; toast.configure(); const Todo = ({ text, todo, todos, setTodos }) => { // Events const deleteHandler = () => { setTodos(todos.filter((element) => element.id !== todo.id)); toast.error("Deleted todo", { position: "top-right", autoClose: 2000, hideProgressBar: false, closeOnClick: true, pauseOnHover: true, draggable: true, progress: undefined, }); }; const [isSpent, setIsSpent] = useState(false); const [isReceived, setIsReceived] = useState(false); return ( <div className="todo"> <div className="bar-tag-container"> <li className={`todo-item ${todo.completed ? "completed" : ""}`}> {isSpent && <p className="tag">Spent</p>} {isReceived && <p className="tag">Received</p>} <div className="others">${text}</div> </li> </div> <button onClick={() => setIsSpent(!isSpent)} className="spent-btn"> <FaMoneyCheckAlt /> </button> <button onClick={() => setIsReceived(!isReceived)} className="receive-btn" > <FaDollarSign /> </button> <button onClick={deleteHandler} className="trash-btn"> <FaTrash /> </button> </div> ); }; export default Todo;
Editor is loading...