Vue登录(meta的使用及权限控制)

首先我们需要创建三个视图,分别是:首页(Home),博客(blog),登录(login)

首页:

 const home={
              template:" <div><p>首页</p><div>"
          }

博客

const blog={
	template:"<div><p>博客</p></div>"
}

登录

 const login={
              template:`
                <div>
                    <p>账号:<input type='text' v-model='name'/></p>    
                    <p>密码:<input type='text' v-model='password'/></p>    
                    <p><input type='button' value='登录' @click='loginName()'/></p>    
                </div>
              `,
            data:()=>({
					name:'',
					password:''
				});
				methods:{
				//将账号,密码存储在本地
					loginName(){
						localStorage.setItem('name',this.name);
						localStorage.setItem('password',this.password);
						this.$router.push({
							name:blog
						});	
					}
				}
          };

接下来是理由的设置

 const routes = [
		            { path: '/home', component: home },
		            { 
				         path: '/blog',
			             component: blog,
			             //登录权限
			             meta:{auth:true},  
			             name:'blog'
		             },
		           
		            {path:'/login',component:login},
		            {path:'/',redirect:'/home'}
            	];
//路由注册
var router=new VueRouter({
	routes
})

路由监控

 router.beforeEach((to, from, next) => {
              console.log(to);
              console.log(from);
              //to跳转的页面
              //from跳转前的页面
              //跳转页面
              if(to.meta.auth){
                let win=window.localStorage;
//检查输入的内容是不是符合要求                
			if(win.getItem("name")=="admins"&&win.getItem('password')=="admins")
				{
				//符合继续进行
                 next();
                }else{
                //不符合跳转登录界面
                    next({
                        path:'/login'
                    })
                }
              }else{
                next();
              }
          });
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值