禁用Vue3的下一页和上一页功能,仅限于同一路由路径下的浏览器使用
P粉002572690
P粉002572690 2023-09-06 23:53:05
0
2
608

今天我面临一个问题,我需要一些建议。

我有一个路由页面结构,像这样{url}/:id。我的目标是防止用户在同一路由内导航到上一页和下一页,例如从{url}/1到{url}/2。我正在进行API调用来改变页面上的数据,URL也相应地发生变化。

然而,我希望用户能够导航到{url}/:id之前或之后的页面,但不能在{url}/:id内部导航。

您能提供任何解决方案或建议吗?我听说导航守卫可能有帮助,但我一开始很难理解它们。

提前感谢您的帮助!


对不起,解释不清楚,我需要浏览器记住上一页或下一页是另一个页面,像{url}/lists或{url}/news,但不记住相同路由页面,这样在浏览器上点击按钮后就不会进入相同的路由页面...

P粉002572690
P粉002572690

全部回复 (2)
P粉242126786

我发现

this.$router.replace({ path: '/your-route' });

而不是

router.push

解决了我的问题。

    P粉275883973

    这是一个使用Vue Router的高级示例:

    router.beforeEach((to, from, next) => { if (to.params.id && from.params.id) { if (to.params.id !== from.params.id) { next(); // 允许在路由内导航到下一页 } else { next(false); // 阻止在路由内导航到同一页 } } else { next(); // 允许导航到其他路由 } });
      最新下载
      更多>
      网站特效
      网站源码
      网站素材
      前端模板
      关于我们 免责声明 Sitemap
      PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!