使用React 实现一个简单的待办事项列表 | 青训营

使用React和Ant Design库构建的待办任务列表应用。它包含了可编辑的表格,用户可以添加、编辑和完成任务,以及保存任务列表数据到本地存储。

  1. 导入所需的模块和组件:代码一开始导入了React相关的模块以及Ant Design的一些组件和类型。

  2. 创建EditableContext上下文 :这里创建了一个名为EditableContext的React上下文,用于在表格组件之间传递FormInstance实例,以便处理表格中的表单操作。

  3. 定义数据类型和接口

    • Item:代表待办任务的数据结构,包含了keyname属性。
    • EditableRowProps:传递给EditableRow组件的属性接口,包含了索引值index
    • EditableCellProps:传递给EditableCell组件的属性接口,包含了列标题title、是否可编辑editable、子元素children等。
  4. EditableRow组件 :这是一个函数式组件,用于包裹每一行的表格行,在其中使用了Form组件来创建表单,以支持行内编辑功能。

  5. EditableCell组件 :这个组件是用于可编辑单元格的核心逻辑。它根据编辑状态渲染不同的内容,可以包含一个Input表单用于编辑,也可以显示任务名称。

  6. App组件

    • 在这里首先从本地存储中获取任务数据、已完成任务数据和计数器。
    • 定义了一系列处理任务操作的函数,如删除任务、添加任务、保存数据等。
    • 创建了默认的表格列配置,包括待完成任务的列和已完成任务的列。
    • 使用useState来管理任务数据、已完成任务数据和计数器,并将它们初始化为从本地存储中获取的数据。
    • 使用components对象来指定自定义表格的行和单元格渲染方式。
    • 对默认列配置进行处理,添加了可编辑属性,并为每列设置了onCell回调函数,以便在单元格内处理编辑逻辑。
    • 最后,渲染了应用的界面,包括输入任务、添加任务、保存任务按钮以及两个表格,一个用于展示待完成任务,另一个用于展示已完成任务。

代码实现了一个简单的待办任务列表应用,用户可以在输入框中添加任务,点击任务完成按钮将任务标记为已完成,还可以编辑任务名称并保存数据到本地存储。整体来说,代码利用了React的状态管理和Ant Design的组件来实现了任务列表的展示、编辑和保存功能。

相关推荐
CallBack8 个月前
Typora+PicGo+阿里云OSS搭建个人图床,纵享丝滑!
前端·青训营笔记
Taonce1 年前
站在Android开发者的角度认识MQTT - 源码篇
android·青训营笔记
AB_IN1 年前
打开抖音会发生什么 | 青训营
青训营笔记
monster1231 年前
结营感受(go) | 青训营
青训营笔记
翼同学1 年前
实践记录:使用Bcrypt进行密码安全性保护和验证 | 青训营
青训营笔记
hu1hu_1 年前
Git 的正确使用姿势与最佳实践(1) | 青训营
青训营笔记
星曈1 年前
详解前端框架中的设计模式 | 青训营
青训营笔记
tuxiaobei1 年前
文件上传漏洞 Upload-lab 实践(中)| 青训营
青训营笔记
yibao1 年前
高质量编程与性能调优实战 | 青训营
青训营笔记
小金先生SG1 年前
阿里云对象存储OSS使用| 青训营
青训营笔记