您好,登錄后才能下訂單哦!
后臺的php請求就是接收這兩個參數
login.vue
<template> <div class=''> <input type="text" v-model="name" /> <input type="password" v-model="password" /> <button type="primary" @click="submitForm"><router-link :to="{path:'/'}">提交</router-link></button> </div> </template> <script> import axios from 'axios'; export default { data(){ return{ name:'', password:'', } }, methods:{ submitForm:function(){ var params = new URLSearchParams(); params.append('name', this.name); params.append('password',this.password); axios({ method: 'post', url: '/api/bbb.php', data:params }).then((resp)=>{ sessionStorage.setItem('token',resp.status)// localStorage //以key value的形式將值存放到sessionStorage中。 console.log(resp); }).catch((error)=>{ console.log(error); }) } } } </script>
router
{ path: '/', name: 'HelloWorld', component: HelloWorld, meta:{requireAuth:true} },
main.js
router.beforeEach((to, from, next) => { console.log(to); console.log(from); console.log( sessionStorage.getItem('token')) if (to.meta.requireAuth) { // 判斷該路由是否需要登錄權限 if(sessionStorage.getItem('token')){ //判斷sessionStorage是否存在token alert("已經登錄了") next(); }else{ //防止死循環 alert("暫時未登錄") if (to.path === '/login') { next(); return }else{ next({ path: '/login', }); } } } else { next(); } /*如果本地 存在 token 則 不允許直接跳轉到 登錄頁面*/ if(to.fullPath == "/login"){ if(localStorage.getItem('token')){ next({ path:from.fullPath }); }else { next(); } } });
注意一定要在router實例前使用
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。