Heim  >  Fragen und Antworten  >  Hauptteil

Vue JS Router: Seite bei Weiterleitung neu laden

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
    });


P粉087074897P粉087074897379 Tage vor699

Antworte allen(2)Ich werde antworten

  • P粉543344381

    P粉5433443812023-10-27 10:44:15

    导航到新 URL 时,Vue Router 不会重新加载页面。

    您可以针对您的问题尝试此代码:

    const url = new URL('/admin/home', window.location.origin)
    window.location.href = url.toString()

    希望这有帮助

    Antwort
    0
  • P粉009828788

    P粉0098287882023-10-27 10:06:32

    您可以使用带有空参数的 this.$router.go() 来重新加载页面。结合 this.$router.push({ path: '/admin/home' }) 您可以在不使用普通 JS 功能的情况下实现它。

    
        
    
    

    请注意我是如何在 $router.push() 之后使用 .then 的。如果没有 then,页面重新加载的速度会太快,没有时间更改路线。

    作为奖励,它可以让您使用 $router.push 的所有功能(例如使用 { name: 'home' } 等参数。

    Antwort
    0
  • StornierenAntwort