使用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的组件来实现了任务列表的展示、编辑和保存功能。

相关推荐
淇逢春1 个月前
可被K整除的子数组问题 | 豆包MarsCode AI 刷题
青训营笔记
静水流深3972 个月前
03 模型IO| 豆包MarsCode AI刷题
青训营笔记
用户247841860022 个月前
第七次算法笔记 | 豆包MarsCode AI刷题
青训营笔记
幻62 个月前
小S的倒排索引 | 豆包MarsCode AI刷题
青训营笔记
用户826014428302 个月前
469. 环形数组最大子数组和问题
青训营笔记
用户605721920982 个月前
奇妙货币交易问题 | 豆包MarsCode AI刷题
青训营笔记
我明天再来学Web渗透2 个月前
“抖音互联网架构分析及高可用系统构建思考”(方向三)| 豆包MarsCode AI刷题
青训营笔记
用户302133066202 个月前
第三次刷题 | 豆包MarsCode AI刷题
青训营笔记
用户9105973027703 个月前
CSS详解| 豆包MarsCode AI刷题
青训营笔记
huyck3 个月前
伴学笔记1|豆包MarsCode AI 刷题
青训营笔记