vue.js - 未登录时如何删除全局侧边栏(vuetify)
问题描述
我想从登录和注册页面中删除我的侧边栏(菜单)。但是这个侧边栏是全局的,所以我不能只是隐藏它。侧边栏文件本身是否有办法检查用户是否像使用 cookie 一样连接?
我正在使用 vuex 和 vuetify 和路由器。
事实是我的侧边栏崩溃了,因为当用户请求中没有数据(未连接)时,侧边栏无法显示。
computed: {
...mapGetters(['getUserData']), //It's null when not logged in
我想在我做任何请求之前检查用户是否已连接,所以我应该从计算方法中删除 mapGetters 并稍后再做,不是吗?
感谢您的回答。
解决方案
据我了解,如果用户未登录,您希望隐藏某些组件、按钮或链接(无论您使用的是哪个)。
如果用户未登录并且您想隐藏,请尝试此操作:
<componentName v-if="!getUserData" />
我为已登录和未登录的用户使用两个侧边栏。
我的项目:
// Component File (filename.vue)
<template>
<v-navigation-drawer v-if="user">
//...
</v-navigation-drawer>
<v-navigation-drawer v-if="!user">
//...
</v-navigation-drawer>
</template>
computed: {
...mapGetters(['isLoggedIn']),
...mapGetters(['user'])
},
我也在努力学习。我希望我的回答是正确的并且有效。
推荐阅读
- javascript - HTML/URL:如何分析按钮调用的是哪个 URL?
- javascript - React:状态更改时 ChildComponent 不会重新渲染
- spring - spring-cloud-starter-oauth2 如何允许注册 api
- javascript - 应用过滤器后如何下载图像文件?
- firebase - 错误:flutter/lib/ui/ui_dart_state.cc(166) 未处理的异常:类型“字符串”不是“索引”类型“int”的子类型
- json - JsonUtility.FromJsonOverwrite 错误统一
- javascript - Multer.fields([...options]) 仅使用第一个选项上传文件
- c# - C# - 我想将 WPF InkCanvas 发送到套接字(其他客户端)
- python - 如何使用 GridSearchCV 的结果绘制验证曲线?
- c++ - No return statement warning in function returning non-void