Javascript Express.js/React.js页面刷新状态的持久性

Javascript Express.js/React.js页面刷新状态的持久性,javascript,node.js,reactjs,session,express,Javascript,Node.js,Reactjs,Session,Express,我目前正在将Express.js与React.js一起使用,我正在考虑如何在刷新页面时保持某个属性 目前我的设置如下: 我为React组件的复选框true设置了默认值。用户可以单击复选框使值为真/假。 我有一个计时器,它会自动注销用户并在一定时间后销毁会话。这个计时器会在用户交互时自动刷新-基本上基于空闲时间 是否有方法将复选框的当前值绑定到会话,以假设会话仍然有效 1存储复选框的值 2刷新后重新加载页面时,加载复选框的当前值,并使用初始加载的默认值将其保存在本地存储器中,并设置使数据过期的时间

我目前正在将Express.js与React.js一起使用,我正在考虑如何在刷新页面时保持某个属性

目前我的设置如下:

我为React组件的复选框true设置了默认值。用户可以单击复选框使值为真/假。 我有一个计时器,它会自动注销用户并在一定时间后销毁会话。这个计时器会在用户交互时自动刷新-基本上基于空闲时间 是否有方法将复选框的当前值绑定到会话,以假设会话仍然有效 1存储复选框的值
2刷新后重新加载页面时,加载复选框的当前值,并使用初始加载的默认值将其保存在本地存储器中,并设置使数据过期的时间。 类似这样的例子:

var timeNow = new Date();
var expires = new Date() //set the expiration date

checkboxGetter(){
if (timeNow<=expires){
var checkboxGetter = JSON.parse(sessionStorage.getItem('checkbox'));
}
else{
 sessionStorage.removeItem("checkbox");
console.log("expired")
}
}

checkboxSetter(checkbox){
sessionStrage.setItem('checkbox',JSON.stringify(checkbox));
}

注意:如果您希望在关闭浏览器时数据保留在浏览器中,或者出于其他目的,可以通过localStorage更改会话存储。

您应该在客户端或服务器端使用某种存储来保存状态。我可以推荐使用本地存储。这是一个很好的答案。我也使用了这个资源: