Bagaimana untuk menyelesaikan ralat hala semula tak terhingga Vue Router
P粉403821740
P粉403821740 2023-08-25 16:12:12
0
1
953
<p>Dalam router.beforeEach, saya ingin menyemak sama ada sessionToken sudah wujud dalam storan dan jika tidak ubah hala ke halaman log masuk untuk mendapatkannya, tetapi saya mendapat ralat berikut: </p> <pre class="brush:php;toolbar:false;">Pengawal navigasi mengesan ubah hala tak terhingga apabila melompat dari "/" ke "/log masuk". Untuk mengelakkan limpahan tindanan, hentikan navigasi. Jika tidak diperbaiki, ini akan menyebabkan masalah dalam persekitaran pengeluaran. </pra> <p>Kod dalam penghala saya.js:</p> <pre class="lang-js prettyprint-override"><code>router.beforeEach((ke, dari, seterusnya) => { if(ENV == 'pembangunan') { biarkan sessionStorage = storage.sessionStorageGet('_sessionToken') jika (sessionStorage === null) seterusnya ({ nama: 'Log Masuk' }) lain seterusnya() } }) </code></pre>
P粉403821740
P粉403821740

membalas semua(1)
P粉529245050
const routes = [
  {
    path: '/login',
    name: 'Login',
    component: () => import('../views/login'),
    meta: {
      requiresAuth: false
    }
  },
  {
    path: '/private',
    ... private route config,
    meta: {
      requiresAuth: true
    }
  }
];

router.beforeEach(async (to, from, next) => {
  if (ENV == 'development') {
    
    if (to.matched.some(record => record.meta.requiresAuth)) {
      const sessionStorage = storage.sessionStorageGet('_sessionToken')
  
      if (sessionStorage) {
        next();
      } else {
        router.push({ name: 'Login' });
      }
    } else {
      next();
    }
  }
});
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan