使用setState或setProps对Reactjs更有效吗?

时间:2014-02-24 06:17:07

标签: javascript reactjs

我正在使用ReactJS(由facebook提供),我可以选择调用setStatesetProps,但不知道哪个更有效率。

(不要将我的代码用于面值。这只是一种简化。我主要关心的是setPropssetState哪个更快。)

对于setProps,我有:

function XHRcallback(data) {
  React.renderComponent(MainApp, $("container")).setProps(data);
}

对于setState,我有:

var updateAll;

function XHRcallback(data) {
  updateAll(data);
}

var List = React.createClass({
  getInitialState: function() {

    updateAll = function(data) {
      this.setState(data);
    }.bind(this);

  },

  render: function() {
    //stuff
  }
});

1 个答案:

答案 0 :(得分:11)

状态和道具在React中同样有效;它们被用于不同的事情。可以将props视为组件的输入,将state视为内部私有变量。

有关状态与道具的讨论,请参阅Thinking in React