当前位置: 首页 > 知识库问答 >
问题:

关于React中的生命周期方法和呈现?

穆彬郁
2023-03-14

我的问题是关于react中的生命周期方法,现在我有了这样的场景:一些数据由ajax在父组件的componentDidMount中获取,然后这些数据作为道具作为子组件传递,现在我们在子组件中,所以我们可以实现不同的生命周期方法,

ComponentDidMount:无法看到道具的真值,例如,它中的日志日期返回空数组,而不是所需的数组

ComponentWillMount:相同。

ComponentWillReceiveProps:如果不使用nextProps,则相同

componentdidupdate:日志数据返回作为prop传递的所需数据

Render:返回所需数据

那么我应该总是被迫在componentDidUpdate或Render中调用我的数据吗???有没有一种方法可以在没有Redux的情况下管理它??

共有1个答案

顾乐池
2023-03-14

您的子组件ComponentWillMountComponentDidMount可能只接收一个空数组(我假定这是默认值),因为子组件在返回API结果之前被实例化,例如 而不是result.lengt>0&& 。Mount只发生一次,然后componentdidupdate会在每次道具更改之后发生。

假设您只是显示传递下来的数据,在Render中处理它是完全可以接受的。否则,如果您想执行额外的副作用,那么在父组件中检查它的完整性(上面的段落),此时您应该能够在子组件的componentdidmount中看到完整的值。或者,您可以按照您的建议在子的componentdidupdate中执行完整性检查,并在那里处理它。

 类似资料:
  • 我从这里的开发指南中读到了android活动的生命周期。现在我混淆了哪部分代码驻留在哪种方法中,比如onCreate、onStart、onResume、onRestart、onPause、onResume、onStop和OnDestroy。你能帮我把它们放在正确的地方吗。而且,即使应用程序最小化,跟踪也应该继续。我有以下代码。 }

  • 除了在上一节说到的4个函数,还有2个函数只用于处理单个线程的启动和关闭,他们只作用于线程环境。 首先,建立一个基本扩展,根据你PHP源码树使用下面几个源文件。 config.m4 PHP_ARG_ENABLE(sample4, [Whether to enable the "sample4" extension], [ enable-sample4 Enable "sample4"

  • 方法的标注和函数类似: struct Owner(i32); impl Owner { // 标注生命周期,就像独立的函数一样。 fn add_one<'a>(&'a mut self) { self.0 += 1; } fn print<'a>(&'a self) { println!("`print`: {}", self.0); } } fn

  • 用法 组件和虚拟 DOM 节点都有生命周期方法,也叫钩子,它们会在 DOM 元素的生命周期的对应时期被调用。 // 组件中的钩子 var ComponentWithHook = { oninit: function(vnode) { console.log("initialize component") }, view: function() { return "hello

  • 本文向大家介绍react生命周期函数相关面试题,主要包含被问及react生命周期函数时的应答技巧和注意事项,需要的朋友参考一下 这个问题要考察的是组件的生命周期 一、 初始化阶段: Constructor初始化状态 componentWillMount:组件即将被装载、渲染到页面上 render:组件在这里生成虚拟的DOM节点 componentDidMount:组件真正在被装载之后 二、 运行中

  • 主要内容:挂载,更新,卸载,实例,实例,React 实例,React 实例在本章节中我们将讨论 React 组件的生命周期。 组件的生命周期可分成三个状态: Mounting(挂载):已插入真实 DOM Updating(更新):正在被重新渲染 Unmounting(卸载):已移出真实 DOM 挂载 当组件实例被创建并插入 DOM 中时,其生命周期调用顺序如下: : 在 React 组件挂载之前,会调用它的构造函数。 : 在调用 render 方法之前调用,并且在初始挂