将状态传递给子组件时未定义状态

Posted

技术标签:

【中文标题】将状态传递给子组件时未定义状态【英文标题】:State is undefined when passing it to a child component 【发布时间】:2021-11-12 06:00:12 【问题描述】:

大家好,各位程序员。我对反应还很陌生,我想知道处理以下情况的最佳方法是什么:

我的根组件有一个表单,它在提交时定义了它应该传递给子组件以映射和渲染的对象列表。但是,在将对象设置为根组件的状态并在渲染时传递给子组件后,它将无法映射,因为状态尚未更新并且因此未定义。

那么,解决这个问题的正确方法是什么?

【问题讨论】:

【参考方案1】:

我通过 if 语句解决了这个问题,如果未设置对象列表,该语句将返回 null。这是正确的方法吗?

【讨论】:

是的,if statement 好主意。此外,当道具为空时,您可以将加载器添加到子组件或警报通知。

以上是关于将状态传递给子组件时未定义状态的主要内容,如果未能解决你的问题,请参考以下文章

使用 Context API 在函数组件中反应未定义的状态属性

【Flutter】多组件共用状态,父组件状态传递给子组件

将两个道具从父组件传递给子组件会导致父组件未定义

无法使用 Link 组件传递状态。为啥状态未定义? [复制]

传递给子组件的道具未定义,但 console.log 显示道具的值

尝试在功能组件之间传递状态但出现“未定义”错误