Vue控制某个页面不显示导航栏

发现问题

今天在使用Vue开发项目的过程中遇到一个小问题,在此记录一下。
由于导航栏是在很多页面都会存在的,所以是抽成组件注册到了App.vue文件中,但是出现一个问题,就是我的登录页面也出现导航栏了,这并不是我想要的,如图:
在这里插入图片描述

解决问题

方法1 - 不推荐

一开始我试着用v-if和计算属性来解决这个问题,但是并不理想,每次需要我手动刷新页面导航栏才会根据我的要求去变化,这里的原因好像是计算属性有缓存。所以就放弃了这种做法。

方法2 - 失败

想起我在用户登录成功后有存token在cookie中,我试着通过token的是否存在来通知v-if的布尔值,但是也没有成功,

方法3 - 推荐

后面看了一些文章,大概是通过$route.meta.keepAlive这样一个在router配置里面设置的属性值来控制,最后是实现了,这里的这个属性随便写成什么字符串都是可以的。但是有的教程说是跟keep-alive组件有关系??有关系吗?接触Vue半个月不到不敢大声说话QAQ

最后贴上我的部分代码

  • App.vue文件
    在这里插入图片描述
  • router/index.js文件
    routers
    我这里使用的是自己定义的一个meta属性,因为不显示导航栏的界面很少,我目前要做的个人项目可能只有登录页不显示,所有就只在登录页设置了该属性为true,在v-if中是取反操作。
  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值