Heim  >  Fragen und Antworten  >  Hauptteil

Die Abhängigkeiten „router.push“ und „unplugin-vue-router“ können in Vue 3 nicht verwendet werden

Ich versuche, ein Vue 2-Projekt auf Vue 3 zu migrieren. Im Vue 3-Projekt gibt es eine Bibliothek namens „unplugin-vue-router“, bei der es sich um ein automatisches dateibasiertes Routing in Vue handelt, das TS unterstützt. Auf der vorherigen Anmeldeseite von Vue 2 (Vue-Router) gibt es jedoch die folgenden Methoden:

created() {
     if (this.loggedIn) {
        this.$router.push('/projects');
     }
}

Also habe ich versucht, es in Vue 3 umzuschreiben:

onMounted(() => {
  if (loggedIn) {
    router.push('/projects');
  }
});

Aber es wird der Fehler angezeigt: Name „router“.ts(2304) nicht gefunden

Meine Frage ist also, wie ich es neu schreibe und mit Vue 3 zum Laufen bringe und wo ich die Konfiguration von Unplugin-Vue-Router ändern kann.

P粉864594965P粉864594965277 Tage vor480

Antworte allen(1)Ich werde antworten

  • P粉155832941

    P粉1558329412024-01-17 09:13:08

    composition-api router中是从vue-router插件导入的。

    为了使用它,您需要按如下方式声明它

    import { userouter } from "vue-router";
    
    const router = useRouter();
    onMounted(() => {
      if (loggedIn) {
        router.push('/projects');
      }
    });
    
    

    查看 vue-router 了解更多详细信息。

    Antwort
    0
  • StornierenAntwort