首页 > 解决方案 > React 路由 - 是否保留了组件状态值,并且 useReducer 可以与其中的一些 useState 变量一起使用吗?

问题描述

我是 React 新手,我计划使用 React 构建一个简单的任务管理站点,对此我有一些困惑。下面是我为该项目制作的线框图:

我的简单任务管理网站的线框图

我的第一个困惑是关于我希望系统自动生成的任务编号字段。为简单起见,我希望任务编号以 001 开头,在创建新任务后会自动增加 1。目前,我不关心在用户离开或刷新站点后保留该值。所以我想我会设置taskNumber为一个状态变量来跟踪它的值。但是,由于我想在另一个页面上显示所有已创建任务的列表,我想知道路由到另一个页面以显示任务是否会重置taskNumber. 在做了一些搜索之后,我仍然没有找到答案。

如果taskNumber当用户转到显示所有任务的页面时不会保留 in 的值,是否有任何推荐的方法可以在网站的不同页面之间保留这种值?我的意思是只使用前端和 React。

我也对使用useReducer钩子获取用户对任务信息的输入是否是一个好主意感到困惑。我最初的想法是为useReducer钩子创建一个状态对象,它将包含任务的每一条信息:

const initialState = {
  taskNum: taskNum, //will start at 001  
  taskTitle: "", //empty by default
  importance: 1, //1 stands for trivial, 2 is normal, 3 is important, and 4 is highly important
  description: "", //empty by default
  taskState: taskState, //will be set as another state variable
  startTime: getTime, //will be a function for getting the date and time
  endTime: null, //not set until task is completed
  awaitNotes: null, //disabled unless task state is awaiting
};

然而,在钩子中嵌入一些状态变量似乎useReducer是闻所未闻的,也是不正确的。

我现在主要停留在这两点。我希望有人能消除我对它们的困惑,并为我提供一些关于构建这个项目可能还需要 React 知识的提示(了解基本的 React 钩子就足够了吗?)非常感谢你的帮助。

标签: reactjsreact-router

解决方案


推荐阅读