【问题标题】:Run componentDidMount after a component attribute value change在组件属性值更改后运行 componentDidMount
【发布时间】:2020-05-20 03:23:28
【问题描述】:

我不知道这在 React 中是否可行,因为我是一名新手 React 开发人员。我想要的是当我的输入元素的属性(数据链接)发生变化时调用一个函数。我使用 componentDidUpdate 但它会在任何组件更改时触发。

我只想在特定元素的特定属性发生任何变化时调用 componentDidUpdate。

【问题讨论】:

  • 所以基本上你可以在你的组件中设置一个状态,当特定元素的特定属性发生任何变化时,该状态将发生变化,并且在 componentDidUpdate 中你检查状态,例如这种状态如果它是假的,这意味着改变是在另一个元素上完成的。

标签: reactjs typescript react-lifecycle


【解决方案1】:

我认为最好的选择是检查具体值是否改变了__(你想在改变时调用函数的那个​​),你可以使用

if (prevState.attribute !== this.state.attribute) {()=>callFunction}

那么只有在属性状态发生变化时才会调用callFunction。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-03
    • 1970-01-01
    • 1970-01-01
    • 2016-07-07
    相关资源
    最近更新 更多