Ich habe eine Anwendung mit den Dateien Login.vue und Home.vue. Da ich eine Admin-HTML-Website in eine Vue-3-Anwendung umwandle, funktioniert mein Javascript nur beim Neuladen der Seite. Als ich die Anwendung erstellt habe, habe ich mich dafür entschieden, einen Router für das SPA hinzuzufügen, vielleicht h?tte ich das nicht tun sollen. Bisher funktioniert die Ansicht, au?er wenn ich vom Login zur Startseite umleite, ohne sie neu zu laden. Da es nicht neu geladen wird, funktionieren meine Navigationsleiste oder andere Funktionen, die auf JS basieren, nicht. Wie kann ich durch Neuladen der Seite von der Anmeldung zur Startseite umleiten? Derzeit habe ich den folgenden Code, aber er funktioniert immer noch nicht.
this.$router.push({ path: "/admin/home", reload: true });
導(dǎo)航到新 URL 時,Vue Router 不會重新加載頁面。
您可以針對您的問題嘗試此代碼:
const url = new URL('/admin/home', window.location.origin) window.location.href = url.toString()
希望這有幫助
您可以使用帶有空參數(shù)的 this.$router.go()
來重新加載頁面。結(jié)合 this.$router.push({ path: '/admin/home' })
您可以在不使用普通 JS 功能的情況下實現(xiàn)它。
請注意我是如何在 $router.push()
之后使用 .then
的。如果沒有 then
,頁面重新加載的速度會太快,沒有時間更改路線。
作為獎勵,它可以讓您使用 $router.push 的所有功能(例如使用 { name: 'home' }
等參數(shù)。