Vue身份验证
P粉765684602
P粉765684602 2023-08-18 10:33:04
0
1
437
<p>我正在使用Vue构建这个小应用程序,但我无法使身份验证工作。确切地说,重定向不起作用,我同时获得了true和Authenticated的日志,但我没有被重定向到主页(/)。但是当我打开应用程序时,我立即被带到/login,这是可以的,我也希望如此,但正如我所说,当我尝试登录时,我没有被重定向。</p> <p>这是我的登录组件和路由器。</p> <pre class="brush:php;toolbar:false;">import { createRouter, createWebHistory } from 'vue-router' import LoginView from '@/views/LoginView.vue' import AboutView from '../views/AboutView.vue'; import isAuthenticated from '@/views/LoginView.vue'; const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), routes: [ { path: '/login', name: 'Login', component: LoginView }, { path: '/', name: 'Home', meta: { requiresAuth: true }, component: AboutView, beforeEnter:(to,_,next)=&gt;{ if(to.meta.requiresAuth &amp;&amp; !isAuthenticated.value){ next('/login'); } else{ next(); router.push('/'); } } } ] }) export default router</pre> <pre class="brush:php;toolbar:false;">&lt;template&gt; &lt;div&gt; &lt;h2&gt;输入访问令牌以登录&lt;/h2&gt; &lt;hr /&gt; &lt;div class="col-md-8"&gt; &lt;section id="loginForm"&gt; &lt;form @submit.prevent="checkAccessToken"&gt; &lt;div class="form-group"&gt; &lt;label&gt;&lt;b&gt;访问令牌&lt;/b&gt;&lt;/label&gt; &lt;input v-model="accessToken" type="password" class="form-control" /&gt; &lt;/div&gt; &lt;input type="submit" value="登录" class="btn btn-primary" /&gt; &lt;/form&gt; &lt;/section&gt; &lt;/div&gt; &lt;/div&gt; &lt;/template&gt; &lt;script setup lang="ts"&gt; import { ref} from 'vue' import router from '@/router/index' const isAuthenticated = ref(false); const accessToken = ref(''); const checkAccessToken = () =&gt; { if (accessToken.value === '123') { isAuthenticated.value = true; console.log(isAuthenticated.value); console.log('已验证'); router.push('/'); } else { } }; &lt;/script&gt;</pre> <p><br /></p>
P粉765684602
P粉765684602

membalas semua(1)
P粉141455512

如果只有router.push()不起作用

那么尝试使用类似于vue-router的导入方式

import { useRouter } from 'vue-router'
const router = useRouter();

然后使用router.push('/')

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!