【发布时间】:2021-02-01 08:09:04
【问题描述】:
我正在使用 useContext 将数据提取到我的组件中。然后我想过滤tasks,所以它只显示项目的相关任务。
我将tasks 过滤成initState,然后想使用这个过滤列表的useState 设置初始状态。
当我过滤initState 中的列表时,我得到了正确的值,但是当我这样做时:
const [listToRender, setListToRender] = useState(initState)
listToRender 是一个空数组,组件内没有状态。
const TasksTable = ({ match: { params: { projectId }} }) => {
const { tasks } = useContext(TasksContext)
const initState = [...tasks].filter(task => task.taskProject === projectId)
const [listToRender, setListToRender] = useState(initState)
有人知道我在哪里可能会出错吗?
这是组件首次渲染时不同值的控制台日志
【问题讨论】:
-
如果codesandbox中的示例代码很好。
标签: reactjs react-hooks use-state react-state