javascript – 重置React ES6中的初始状态

前端之家收集整理的这篇文章主要介绍了javascript – 重置React ES6中的初始状态前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个类,下面的ElementBuilder,当用户保存他们构建的元素时,我希望状态重置为下面的值.

我在这个类中有一些我没有提供但是改变标题,大小和颜色状态的函数.

在ES 5中,我在我的类上有一个getInitialState函数,可以在函数调用this.getInitialState().

这个元素存在于我的应用程序中,用于登录用户的生命周期,我希望默认值始终相同,无论过去的用法如何.

如何在不编写设置默认值对象的函数(或者可能是答案)的情况下实现此目的?谢谢!

class ElementBuilder extends Component {
    constructor(props) {
        super(props);

        this.state = {
            title: 'Testing,size: 100,color: '#4d96ce',};
    }

    resetBuilder() {
        this.setState({ this.getInitialState() });
    }
}

解决方法

您可以使用getter函数
class ElementBuilder extends Component {
    constructor(props) {
        super(props);

        this.state = this.initialState;
    }

    get initialState() {
      return {
          title: 'Testing',};
    }

    resetBuilder() {
        this.state(this.initialState);
    }
}

或只是一个变量:

constructor(props) {
    super(props);

    this.initialState = {
        title: 'Testing',};
    this.state = this.initialState;
}

猜你在找的JavaScript相关文章