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
應該有一種其他類型的財產。但是,這是一場我將在另一天戰鬥的戰鬥。