Tidak dapat menggunakan kebergantungan router.push dan unplugin-vue-router dalam Vue 3
P粉864594965
P粉864594965 2024-01-16 13:49:57
0
1
509

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粉864594965
P粉864594965

membalas semua(1)
P粉155832941

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.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan