当前位置: 首页 > 知识库问答 >
问题:

javascript - vu3项目实现路由跳转到新页面,返回旧页面,保留跳转之前的旧页面数据?

胡浩瀚
2024-02-15

如题,各位我有一个项目,现在有一个需求,在弹出窗口中跳转到一个选择页面,选择完成之后返回原来的页面,如何保持原来的页面状态不变?
尝试过使用keep-alive但是效果不理想。
请问有什么办法,或者什么思路!
备注:页面都是同一个站点的

共有4个答案

长孙正卿
2024-02-15

弹窗的话原先也没不会变啊

钱志
2024-02-15

把页面组件的数据放vuex里面,然后vuex使用持久化插件

双俊人
2024-02-15

偷懒的方案就是新开一个网页,要不就想办法用storage保存

融烨华
2024-02-15

在Vue中,你可以使用Vue Router的编程式导航和Vuex的状态管理来实现这个需求。以下是一个简单的实现方案:

首先,你需要安装并设置Vue Router和Vuex。然后,你可以创建一个新的Vuex存储来保存你在不同页面之间切换时需要保留的数据。

// store.jsimport Vue from 'vue';import Vuex from 'vuex';Vue.use(Vuex);export default new Vuex.Store({  state: {    // 保存页面状态的数据  },  mutations: {    // 更新页面状态的数据  },  actions: {    // 更新页面状态的数据  },});

然后,在你的主Vue实例中,你可以使用this.$store来访问这个存储。当用户导航到新的页面时,你可以在Vuex存储中保存需要保留的数据。当用户返回原来的页面时,你可以从Vuex存储中获取这些数据并更新页面的状态。

// main.jsimport Vue from 'vue';import App from './App.vue';import store from './store'; // 引入刚才创建的store.jsimport router from './router'; // 引入router.jsVue.config.productionTip = false;new Vue({  router,  store, // 将store添加到Vue实例中,使其可以在组件中使用this.$store来访问  render: h => h(App),}).$mount('#app');

在你的组件中,你可以使用this.$store.state来访问存储中的状态数据,使用this.$store.commit来提交一个突变来更新状态数据,使用this.$store.dispatch来派发一个动作来异步更新状态数据。

最后,你可以在Vue Router的导航守卫中添加一些逻辑,以便在用户导航到新的页面时保存状态数据,并在用户返回原来的页面时恢复这些数据。

这是一个基本的实现方案,具体的实现细节可能因你的项目需求而有所不同。

 类似资料:
  • 本文向大家介绍vue实现登录后页面跳转到之前页面,包括了vue实现登录后页面跳转到之前页面的使用技巧和注意事项,需要的朋友参考一下 在开发中我们经常遇到这样的需求,需要用户直接点击一个链接进入到一个页面,用户点击后链接后会触发401拦截返回登录界面,登录后又跳转到链接的页面而不是首页,这种问题该如何去做呢? 先说一下我们需要用到的几个API: 1.router.currentRoute:当前的路由

  • 页面跳转可以是打开新的一页,也可以是当前页重定向,还可以是跳转到当前页的某个状态,下面会从打开w文件,打开其它后缀文件,使用路由等几个方面分别介绍一下在X5中的页面跳转。 目录 1、打开w文件 1.1、使用Shell提供的方法 1.2、使用弹出窗口打开 1.3、模拟门户的做法 2、打开html等其它类型的文件 2.1、使用打开w文件的方法 2.2、使用a链接跳转 2.3、页面重定向 2.4、使用w

  • 页面跳转可以是打开新的一页,也可以是当前页重定向,还可以是跳转到当前页的某个状态,下面会从打开w文件,打开其它后缀文件,使用路由等几个方面分别介绍一下在X5中的页面跳转。 目录 1、打开w文件 1.1、使用Shell提供的方法 1.2、使用弹出窗口打开 1.3、模拟门户的做法 2、打开html等其它类型的文件 2.1、使用打开w文件的方法 2.2、使用a链接跳转 2.3、页面重定向 2.4、使用w

  • 问题: 前端如何跳转页面路径 ? 我尝试使用了路由的语法, 但是没有跳转

  • 本文向大家介绍vue单页面实现当前页面刷新或跳转时提示保存,包括了vue单页面实现当前页面刷新或跳转时提示保存的使用技巧和注意事项,需要的朋友参考一下 前言 最近公司vue项目中有一个需求,需要在当前页面刷新或跳转时提示保存并可取消刷新,以防止填写的表单内容丢失。刚开始思考觉得很简单,直接在Router的钩子中判断就好了,但是会发现还有新的问题存在,浏览器刷新和当前页面关闭的时候无法监听,最终用w

  • 方法一:使用QAP-SDK的Navigator.push(Navigator.go): QN.navigator.push({ url: 'http://www.taobao.com', query: {}, settings: { animate: true, } }).then(result => { console.log(result