拨打'父亲'函数形式a'儿童'ReactJS中的组件

Call a 'Fathers' function form a 'Children' component in ReactJS

本文关键字:ReactJS 组件 儿童 父亲 函数 拨打      更新时间:2023-09-26

我有下一个组件"Father",它在React js中包含一个"Children"组件。

var Father = React.createClass({
    render: function () {
        return (
            <div>
                <Children/>
            </div>
        );
    },
    onUpdate: function(state) {
        this.setState(state);
    } });

我想从孩子们那里调用父亲的onUpdate函数,但不调用"children"方法"componentDidUpdate",因为我正在使用该方法来做其他破坏我的应用程序的事情。

我该怎么做?

在属性中传递它。如果您只需要更新特定的部分并阻止您的孩子更新,请使用shouldComponentUpdate 方法

var Father = React.createClass({
  render: function () {
    return (
        <div>
            <Children onUpdateCallback={this.onUpdate}/>
        </div>
    );
  },
  onUpdate: function(state) {
    this.setState(state);
  }
});
var Child = React.createClass({
  render: function () { ... },
  shouldComponentUpdate: function (prevProps, prevState) { ... return false}
});

如果你的孩子不能/不应该在家长更新的时候更新,我认为你可能做错了什么,但祝你好运。