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

不安全组件将接收道具并将其转换为React Hook功能组件中的下一步是什么?

司马祖鹤
2023-03-14

我是ReactJS的初学者,我正在将类组件转换为函数式组件。

    UNSAFE_componentWillReceiveProps(nextProps) {
    let oldGroupList =
      (this.props.contentMultiaction && this.props.contentMultiaction.groups) || [];
    let newGroupList = nextProps.contentMultiaction?.groups || [];

    if (oldGroupList.length !== newGroupList.length) {
      this.getShownGroups(nextProps);
    }
    this.checkAllGroupsState(nextProps);
  }

虽然这是一种不推荐使用的生命周期方法,但我想知道如何在功能组件中重写它。提前谢谢

共有1个答案

钱毅
2023-03-14

使用use效应()钩子。将要监视的值添加到钩子的依赖项数组。

js prettyprint-override">useEffect(() => {
 // runs if contentMultiaction.groups has changed
}, [contentMultiaction.groups]);
 类似资料:
  • 我有一个应用程序正在使用类组件开发react,我发现了一个功能的代码,我想添加到我的代码中,但它是使用功能组件制作的。代码在这里https://codesandbox.io/s/framer-motion-animate-in-view-gqcc8 但相关部分是这样的。 我不知道如何在我的类组件中添加那个控件变量 我应该把它添加到我的州吗?我不明白如何让它在类组件中工作

  • parentcomponent.js ChildComponent.js 为什么在单击后,子组件仍然显示旧值而不重新呈现?

  • 最后,在中有一个子组件,名为。这就是问题所在。我还将从获得的项传递到。因此,数据流是(连接)>(未连接)>(连接)。 连接到Redux。它使用redux中的一些操作来更新中的项。当我在中更新时,可以很好地接收更新后的数据,但是却什么都接收不到。中的项从未更新。 我发现问题出在将连接到Redux时。如果没有连接到redux,它也会接收更新的道具,就像一样。 组件如下。我已经试着尽可能地简化它们。 D

  • 在Vue 2.0应用程序中,假设我们有组件a、B和C。 A声明、登记和使用B 有可能把C从A传到B吗? 像这样的东西: 在B中使用C。 动机:我想创建一个通用组件,它在中使用,但从其子接收。实际上,将使用多次向其传递不同的“C”。 如果这种方法不正确,在Vue中正确的方法是什么? 回答@Saurabh 我没有作为道具通过,而是尝试了B中的建议。 基本上我是在尝试渲染设备,但是动态方式 我在控制台中

  • 我正在做一个函数(Java-Android),它应该返回一个由Firebase中的数据填充的对象列表。我的问题是,我需要在遍历for中的所有项目后将结果发送给监听器,看看代码: 我需要执行这一行:

  • 问题内容: 我想更改字节数组中的值以在MSB中放入较长的时间戳值。有人可以告诉我最好的方法是什么。我不想一点一点地插入值,我认为这是非常低效的。 我想要的是这样的: 这样是可能的。在此字节数组中编辑/插入值的最佳方法是什么。由于字节是原始数据,我不认为有一些直接的实现可以利用吗? 编辑: 似乎比快,所以用它替换上面的代码。如果有误,请纠正我。 问题答案: 有多种方法可以做到这一点: 使用(最佳选择