React:在状态发生变化后获取初始状态

时间:2014-07-09 07:39:21

标签: javascript reactjs

在状态发生变化后,是否可以检索初始状态? F.ex:

React.createClass({
  getInitialState: function() {
    return { foo: 'bar' }
  },
  componentWillMount: function() {
    this.setState({ foo: 'foo' })
  },
  componentDidMount: function() {
    // get the initial state "bar" ?
  }
})

我在文档中找不到任何内容。我当然可以将值保存在外部变量中,但如果可以将初始状态视为可以重复使用的“配置”对象,我只是好奇。

2 个答案:

答案 0 :(得分:7)

不,初始状态未存储 - 但如果要重新执行该功能,可以调用this.getInitialState()

答案 1 :(得分:0)

只需将初始状态保存在变量中:

React.createClass({
    initialState: { foo: 'bar' },

    getInitialState   : function () {
        return this.initialState;
    },
    componentWillMount: function () {
        this.setState({ foo: 'foo' })
    },
    componentDidMount : function () {
        console.log(this.initialState.foo); // Logs 'bar'
    }
});