cari

Rumah  >  Soal Jawab  >  teks badan

Tidak dapat menggunakan kebergantungan router.push dan unplugin-vue-router dalam Vue 3

Saya cuba memindahkan projek Vue 2 ke Vue 3, dalam projek Vue 3 ia mempunyai perpustakaan yang dipanggil "unplugin-vue-router", yang merupakan penghalaan berasaskan fail automatik dalam Vue yang menyokong TS. Tetapi terdapat kaedah berikut dalam halaman log masuk vue 2 (vue-router) sebelumnya:

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

Jadi saya cuba menulis semula dalam Vue 3:

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

Tetapi ia menunjukkan ralat: Nama "router".ts(2304) tidak ditemui

Jadi soalan saya ialah bagaimana untuk menulis semula dan menjadikannya berfungsi dengan vue 3 dan di manakah saya boleh menukar konfigurasi unplugin-vue-router.

P粉864594965P粉864594965354 hari yang lalu593

membalas semua(1)saya akan balas

  • P粉155832941

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

    Diimport dalam composition-api router中是从vue-routerplugin.

    Untuk menggunakannya, anda perlu mengisytiharkannya seperti berikut

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

    Lihat vue-router untuk butiran lanjut.

    balas
    0
  • Batalbalas