美食杰项目登录页面开发

登录页

export default {

  data() {

    return {

      ruleForm:{

        name:"",

        password:"",

      },

       rules:{

         name:[

           {required:true,message:"请输入用户名",trigger:'blur'}

         ],

         password:[

           {required:true,message:"请输入密码",trigger:'blur'}

         ]

       }

    };

  },

  methods: {

      submitForm(){

        login({

          name:this.ruleForm.name,

          password:this.ruleForm.password

        }).then((data)=>{//成功

          console.log(data);

          if(data.code==0){  

            // localStorage.setItem("token",data.data.token)

            window.location.href="/"

          }

          if(data.code==1){  //失败

            this.$message.error(data.mes);

          }

        });

      }

  }

}

退出登录会给你弹出一个框出来

export default {

  name: 'headers',

  components: {Menus},

  computed:{

     isLogin(){

       return this.$store.getters.isLogin;

     },

     userInfo(){

       return this.$store.state.userInfo;

     }

  },

  methods:{

    loginOut(){

      this.$confirm("真的要走吗","提示",{

        confirmButtonText:'确定',

        cancelButtonText:'取消',

        type:'warning'

      }).then(async ()=>{

        const data=await login_out();

  //把token里面登录的数据删除

        localStorage.removeItem("token");

        window.localStorage.href='/';

      })

    }

  }

}

使用路由守卫

router.beforeEach(async (to,from,next)=>{

    // console.log(to)

    // console.log(from)

    // 判断一下是否需要登录

    const data = await userInfo();

    console.log(data)

   

     Store.commit("chnageUserInfo",data.data)

    if(to.matched.some(item=>item.meta.login)){

        // console.log("需要登录");

       const token= localStorage.getItem("token");

       const isLogin = !!token;

        if(isLogin){

            if(data.errpr===400){

                next({name:'login'});

                localStorage.removeItem('token');

                return;

            }

            next();

            return;    

        }

        // 没登录,但是要进入登录页

        if(!isLogin && to.name==='login'){

            next();

        }

        // 没登录,要进入的页面也不是登录页

        if(!isLogin && to.name!=='login'){

            next({name:'login'})

        }

    }else{

        next();

         

    }

})


版权声明:本文为weixin_62223894原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。