代码之家  ›  专栏  ›  技术社区  ›  Yousif Mamdouh

React Reveal显示错误“componentWillReceiveProps”已重命名

  •  0
  • Yousif Mamdouh  · 技术社区  · 3 年前

    尝试使用时收到错误消息 react-reveal 有什么问题吗?或者还有比它更好的包装吗?

    警告:componentWillReceiveProps已被重命名,不建议使用。看见 https://legacy.reactjs.org/blog/2018/03/27/update-on-async-rendering.html 详细信息。

    • 将数据获取代码或副作用移动到componentDidUpdate。
    • 如果您在道具更改时更新状态,请重构代码以使用内存化技术,或者将其移动到静态getDerivedStateFromProps。了解更多信息,请访问: https://legacy.reactjs.org/blog/2018/06/07/you-probably-dont-need-derived-state.html
    • 将componentWillReceiveProps重命名为UNSAFE_componentWillReceiveProps以在非严格模式下抑制此警告。在React 17.x中,只有UNSAFE_名称才有效。要将所有弃用的生命周期重命名为新名称,可以运行 npx react-codemod rename-unsafe-lifecycles 在项目源文件夹中。

    请更新以下组件: RevealBase

    Warning

    我尝试了以下操作:

    npm i react-reveal --legacy-peer-deps
    npm config set legacy-peer-deps true
    

    但什么都不管用

    1 回复  |  直到 3 年前
        1
  •  0
  •   AngYC    3 年前

    这只是React本身的警告,而不是错误,它与您如何安装无关 npm 。它的意思是财产 componentWillReceiveProps 来自React的已弃用,可能会在未来的React版本中删除。

    然而,这个项目 react-reveal 似乎被放弃了,所以不会有任何更新来解决这个问题,更多信息可以在他们的Github回购问题中找到: https://github.com/rnosov/react-reveal/issues/105

    推荐文章