返回
用Hooks优雅写一个 TodoList,一气呵成!
前端
2023-10-17 04:32:28
前言
在React的世界里,Hooks是一个强大的工具,它可以帮助我们轻松地管理组件状态,构建交互式UI,以及处理各种异步操作。在这个教程中,我们将使用纯React Hooks来构建一个完整的TodoList应用程序,让你彻底掌握Hooks的用法。
搭建项目
首先,我们需要创建一个新的React应用程序。你可以使用create-react-app脚手架来快速搭建项目。在你的终端中输入以下命令:
npx create-react-app todo-app
安装完成后,进入项目目录:
cd todo-app
启动开发服务器:
npm start
创建TodoList组件
现在,让我们创建一个名为TodoList
的组件。这个组件将负责管理任务列表和相关的操作。在src
目录下创建一个名为TodoList.js
的文件,并添加以下代码:
import React, { useState } from "react";
const TodoList = () => {
const [tasks, setTasks] = useState([]);
const addTask = (task) => {
setTasks([...tasks, task]);
};
const removeTask = (index) => {
const newTasks = [...tasks];
newTasks.splice(index, 1);
setTasks(newTasks);
};
return (
<div>
<h1>Todo List</h1>
<ul>
{tasks.map((task, index) => (
<li key={index}>
{task}
<button onClick={() => removeTask(index)}>X</button>
</li>
))}
</ul>
<input type="text" placeholder="Add a task" onKeyPress={(e) => {if (e.key === 'Enter') addTask(e.target.value)}}/>
</div>
);
};
export default TodoList;
使用TodoList组件
现在,我们在App.js
文件中导入TodoList
组件并使用它。修改App.js
文件的内容如下:
import React from "react";
import TodoList from "./TodoList";
function App() {
return (
<div className="App">
<TodoList />
</div>
);
}
export default App;
运行项目
现在,你可以再次运行开发服务器:
npm start
然后,在浏览器中打开http://localhost:3000
,你将看到一个简单的TodoList应用程序。你可以添加、删除任务,以及查看任务列表。
结语
在这个教程中,我们使用纯React Hooks构建了一个简单的TodoList应用程序。我们学习了如何使用useState钩子来管理组件状态,以及如何使用useEffect钩子来处理副作用。通过这个例子,你对React Hooks有了更深入的理解,并且可以将其应用到你的项目中。
扩展阅读
如果你想了解更多关于React Hooks的内容,可以参考以下资源:
我希望这个教程对你有帮助!如果你有任何问题或建议,请随时留言。