ReactJs将参数传递给父而没有事件处理程序

时间:2015-08-24 15:37:23

标签: javascript reactjs

我需要将参数从子组件传递给父组件而不需要像onClick这样的事件处理程序... 我的父组件有一个方法和子组件" A"每x秒必须将参数传递给父方法。此方法更改父状态,并将此值作为props传递给另一个子组件" B"。 我怎么能这样做?

这是我的代码:

var Parent = React.createClass({
    getInitialState: function() {
        return {
            notification: [ {
                data: "-",
                message: "no notification to show",
                type: "-"
            } ]
        };
    },

    handleNotification: function(res) {
        var notification = this.state.notification;
        notification.push(res);
        this.setState({ notification: notification });
    },

    render: function() {
        return(
            <div>
                <Child callFunction={this.handleNotification} />
                <NotificationBox
                    notification={this.state.notification}
                    />
            </div>
        );
    }
});


var Child = React.createClass({
    displayName: "Child",

    handleReturnNotification: function(o) {
        this.props.callFunction.bind(o);
    },

    render: function() {
        var msg = "message:" ;
        var o = {
            data: "-",
            message: msg,
            type: "Alert"
        };
        this.handleReturnNotification.bind(this, o);

        return (
          <div></div>
        );
    }
});

1 个答案:

答案 0 :(得分:3)

将父方法作为道具传递。在孩子A做this.props.parentMethod(parameter);