反应模态重用

时间:2016-09-20 23:47:14

标签: reactjs react-bootstrap

我目前正在制作React应用程序,但我遇到了一个问题。

我有一个包含用户的列表,一个显示添加用户的模式的按钮,当您从列表中单击用户时,它会显示用于注册用户的相同模式,但是使用用户信息以便您可以修改它

到目前为止,一切都运行良好,当我打开模态时,我将绑定到模态的状态设置为该用户的信息,模态显示,我编辑用户信息,关闭它,列表立即刷新。< / p>

我的问题是,如果用户想要放弃这些更改,我就无法确定状态更改是否仍然存在。

我脑子里有一些解决方法,例如我可以在模态打开时保存状态,如果用户点击Discard我将保存的状态恢复到运行状态吗?

我正在使用bootstrap-react

720

问题在于UserHandle

1 个答案:

答案 0 :(得分:2)

我不是百分之百确定,但也许你可以做到这一点

class AppContainer extends React.Component {
    constructor(props) {
        super();
        this.state = {
            previousName: '',
            name: 'Dan'
        };
    }

    editName(newName) {
        this.setState({
            previousName: this.state.name,
            name: newName
        });
    }

    restoreName() {
        this.setState({
            previousName: '',
            name: this.state.previousName
        });
    }
    render() {
        return(
            <App 
                {...this.state}
                editName={this.editName.bind(this)}
                restoreName={this.restoreName.bind(this)}
            />  
        );
    }
}