【问题标题】:react js project Warning: componentWillReceiveProps has been renamed. how can solve it?react js 项目警告:componentWillReceiveProps 已重命名。怎么解决呢?
【发布时间】:2021-01-14 14:34:23
【问题描述】:

我收到以下警告。

Warning: componentWillReceiveProps has been renamed, and is not recommended for use. See react-unsafe-component-lifecycles for details.

  • 将数据获取代码或副作用移至 componentDidUpdate。
  • 如果您在 props 更改时更新状态,请重构您的代码以使用记忆技术或将其移至静态 getDerivedStateFromProps。在 react-derived-state 了解更多信息
  • 将 componentWillReceiveProps 重命名为 UNSAFE_componentWillReceiveProps 以在非严格模式下抑制此警告。在 React 17.x 中,只有 UNSAFE_ 名称可以使用。要将所有已弃用的生命周期重命名为新名称,您可以在项目源文件夹中运行 px react-code mod rename-unsafe-lifecycles

请更新以下组件:Bar、BarChart

【问题讨论】:

  • 我们需要查看 Bar 和 BarChart 的代码才能给出答案。如果这些是您从库中导入的组件,则需要更新库。
  • 我们需要查看实现 Bar 和 BarChart 的代码,而不是使用它们的代码。请把它放在问题中,而不是评论。
  • @CoderFaruk 我没有适合您的完美解决方案,但是,现在,我假设您是这种反应用法的新手。截至目前,我强烈建议您继续进行您的反应使用/学习/应用程序构建。一旦你有足够的 react 经验,你将能够更好地解决警告。如您所见,这些是警告。现在,你可以忽略它。你应该解决它,但是,我建议,不是现在。
  • @CoderFaruk,尝试使用 Reacharts 2.0.0-beta.5。 github.com/recharts/recharts/issues/2102

标签: javascript reactjs


【解决方案1】:

警告信息很清楚。我猜,你将你的 react 包更新到了​​版本 17 的候选版本。现在,您必须更新一些生命周期方法。你有两个选择。

  1. 根据release notes 中的指南更改生命周期方法。

  2. 运行警告中提到的单个命令,以修复 已弃用的生命周期方法。

px react-code mod rename-unsafe-lifecycles

【讨论】:

    猜你喜欢
    • 2020-04-13
    • 2020-06-06
    • 2020-05-28
    • 2019-12-18
    • 2017-08-05
    • 2022-12-01
    • 2018-11-11
    • 2020-05-11
    • 2020-11-13
    相关资源
    最近更新 更多