reactjs - 如何在页面刷新时访问状态值?
问题描述
如何在页面刷新时访问状态值?
当我刷新页面时,我无法获得状态值。所以有人建议我解决这个问题。我使用下面的库代码在我的应用程序中实现了一个计时器。
https://medium.com/@650egor/react-30-day-challenge-day-1-simple-timer-df85d0867553
谢谢。
解决方案
如果您不将状态存储在某处,则在站点刷新时它会丢失。您将再次看到默认状态。
它就像一个普通的脚本。如果你停止它并再次运行它,它就不会“记住”它之前所做的事情。
您现在可以使用浏览器的本地存储来存储一些信息。但我建议,看看一些状态管理工具来正确处理状态。
这是您在寻找的答案吗?让我知道。如果不是,请提供您正在谈论的代码片段或您收到的错误消息。
这是使用本地存储的工作方式:
state = {
time: "11:00pm",
}
componentDidMount = () => {
if (myStorage.state) {
this.setState(JSON.parse(myStorage.state))
}
}
saveToStorage = () => {
myStorage.setItem("state", JSON.stringify(this.state))
}
您现在必须尽可能频繁地调用 saveToStorage。记住刷新就像在中间杀死一个电子游戏。如果您没有保存,您将回到起点。这有帮助吗?
问候
推荐阅读
- r - 在 R 中设置因子的颜色
- javascript - 从 c++ 到 java 脚本的用户控制 Webassembly 访问调用
- python - 如何在 numpy 中声明类似于此 C 结构的结构化数组类型?
- python - Pygame - 让精灵循环浏览类中的图像,并分配一个命中框
- sql - 如何在firebird函数datediff中获得正确的年月日,包括闰年
- sql - 如果组为空,则从查询中删除结果
- c - C - 数组放入变量时从同一元素返回不同的值
- python - 将 RGBA 字节数组转换为 cv2 图像(没有错误,cv2 永远挂起)
- c++ - 如何使用主要参数添加更多堆栈?
- php - PHP Decimal128 字符串格式化