如何在反应v0.13中转移道具?

时间:2015-06-03 11:56:54

标签: javascript reactjs react-jsx

我正在尝试学习我的第一个javascript项目的反应,并作为一个开始创建一个非常简单的代码,添加在文本框中输入的两个数字。在键入数字时重新呈现结果。这对我起作用反应v0.11。

var App = React.createClass({

    mixins: [React.addons.LinkedStateMixin],

    getInitialState: function() {
        return {
            payment: 0,
            payment2: 0
        };
    },
    render: function() {
        var total = parseInt(this.state.payment, 10) +
                    parseInt(this.state.payment2, 10);
        return (
            <div>
                <Payment {...this.props} valueLink={this.linkState('payment')}/><span>+</span>
                <Payment {...this.props} valueLink={this.linkState('payment2')}/><span>=</span>
                { total }
            </div>
        );
    }

});


var Payment = React.createClass({

    render: function() {
        return this.transferPropsTo(
            <input type="text" />
        );
    }

});

React.render(
 <App />,
 document.getElementById('app')
);

但是,似乎在v0.13中删除了 transferPropsTo()功能。我如何在最新版本中执行等效操作。

1 个答案:

答案 0 :(得分:6)

您可以在输入标记中传递{...this.props}

 var Payment = React.createClass({
   render: function() {
     return (
       <input type="text" {...this.props} />
     );
   }
});

这使用JSX spread attributes功能。