0
我很努力与vue-router的问题。 我需要检查一个简单的条件,即强制重新加载,如果没有找到匹配的路由vue路由器
If no matching route is found. Do window.location.reload()
我使用VUE路由器:2.7.0和VUE是2.4.2
我已经经历了巨大的博客文章了,但没有在那里发现一个直接的答案。
我很努力与vue-router的问题。 我需要检查一个简单的条件,即强制重新加载,如果没有找到匹配的路由vue路由器
If no matching route is found. Do window.location.reload()
我使用VUE路由器:2.7.0和VUE是2.4.2
我已经经历了巨大的博客文章了,但没有在那里发现一个直接的答案。
我会抛出代码然后解释。
const router = new VueRouter({
mode: 'history',
routes,
});
router.beforeEach((to, from, next) => {
if (to.matched.length === 0) {
window.location.reload();
}
next();
});
router.beforeEach在用三个参数加载路由之前调用。 to, from and next
。接下来是一个回调函数。
这里的关键是to
参数中的匹配属性。它包含一组匹配的路线。如果找不到匹配的路由,则to.matched
数组的长度将变为0,这是我用于做出决定的属性。
vue-router
应该有一种其他类型的财产。但是,这是一场我将在另一天战斗的战斗。