JavaScript 开发者必看:用 localStorage 解决 Vuex 页面刷新数据丢失难题
Vuex 的数据在页面刷新后会丢失,这是因为在浏览器的本地存储中,只有当页面关闭时才会清除存储的数据。如果你需要在页面刷新后保留 Vuex 的数据,你可以考虑使用浏览器的 localStorage 或 sessionStorage。 localStorage 会在浏览器关闭时保留数据,而 sessionStorage 则会在窗口关闭时删除数据。你可以根据你的需求选择合适的存储方式。 以下是一个使用 localStorage 的例子: ```javascript import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) export default new Vuex.Store({ state: { data: JSON.parse(localStorage.getItem('data')) || {} }, mutations: { setData(state, data) { state.data = data localStorage.setItem('data', JSON.stringify(data)) } }, actions: { setData({ commit }, data) { commit('setData', data) } } }) ``` 在这个例子中,我们在 Vuex 的 state 中设置了 data,并在 mutations 中添加了一个 setData 方法来更新数据并将其存储到 localStorage 中。在 actions 中,我们定义了一个 setData 方法来调用 mutations 中的 setData 方法。 当你需要在页面刷新后保留数据时,你可以调用 setData 方法并将数据传递给它。例如: ```javascript this.$store.dispatch('setData', { key: 'value' }) ``` 这将在页面刷新后保留 data,并在localStorage中存储。 ######[AI写代码神器 | 290点数解答 | 2023-11-09 01:32:37]
- Vue项目代码优化:职位详情异常处理、简历校验与收藏操作提示升级 (GPT | 136点数解答 | 2024-12-29 17:09:05)238
- Java代码实现从JSON数据中提取ID,涉及“数据”与“项目 - 知识库”结构(字节豆包 | 603点数解答 | 2025-04-15 22:48:51)237
- C++ 实现:计算一排鹅与最高、最矮鹅的身高差及代码详解(字节豆包 | 549点数解答 | 2025-11-16 20:19:06)82
- 编程揭秘:计算 𝑛! 在 𝑃 进制下末尾零个数的方法与代码实现(DeepSeek | 549点数解答 | 2026-01-11 17:49:54)46
- JavaScript 开发必知:Vuex 与 LocalStorage 的区别大揭秘(阿里通义 | 245点数解答 | 2023-11-09 01:50:45)178
- 原生 JavaScript 实现可刷新排序的笔记列表页面(字节豆包 | 486点数解答 | 2024-10-23 17:52:51)169
- 导出功能优化:解决多次导出、过程异常、失败提示及完成通知问题 (DeepSeek | 1点数解答 | 2025-02-12 17:35:54)187
- JavaScript 开发者必看:用 localStorage 解决 Vuex 页面刷新数据丢失难题(阿里通义 | 290点数解答 | 2023-11-09 01:32:37)259
- Vue.js 开发必看!一文详解 JavaScript 中使用 Vuex 的适用场景(阿里通义 | 236点数解答 | 2023-11-09 01:34:38)155
- JavaScript 开发解惑:双向绑定与 Vuex 到底冲突吗?(阿里通义 | 189点数解答 | 2023-11-09 01:49:05)169
- JavaScript开发必知:Redux与Vuex的区别及共同思想揭秘(阿里通义 | 252点数解答 | 2023-11-09 01:53:51)190
- Visual C++ 6.0:实现 n×n 矩阵最大最小元素所在行对调及输出(字节豆包 | 648点数解答 | 2024-11-02 10:23:57)309