Essa será uma aplicação onde o seu principal objetivo é uma pequena aplicação de atividades a fazer, para treinar um pouco mais sobre manipulação do estado no React.
- Adicionar uma nova tarefa
- Remover uma tarefa
- Marcar e desmarcar uma tarefa como concluída
O template está disponível na seguinte URL: github.com/rocketseat-education/ignite-template-reactjs-conceitos-do-react
components/TaskList.tsx
é componente responsável por todas as funcionalidades da aplicação
function handleCreateNewTask() {
if(!newTaskTitle) return
const newTask = {
id: Math.random(),
title: newTaskTitle,
isComplete: false
}
setTasks(tasks => [...tasks, newTask])
setNewTaskTitle('')
}
function handleRemoveTask(id: number) {
const filteredTasks = tasks.filter(task => task.id !== id)
setTasks(filteredTasks)
}
function handleToggleTaskCompletion(id: number) {
const task = tasks.map(task => task.id === id ? {
...task,
isComplete: !task.isComplete
} : task)
setTasks(task)
}
Feito com 💜 por Rocketseat