Vuejs。更新时更新数据()
Vuejs. Update data() on update
我正在尝试检查是否有经过身份验证的用户以呈现边栏和 header。
如果未通过身份验证,侧边栏和 header 不会呈现,以便仅显示登录或注册。但是我的 this.auth 数据在我重新加载页面之前没有得到更新。我知道 vuejs 上可能有一个功能会更频繁地更新这个变量? (我的侧边栏包含 router-links 以加载我的其余组件,但是当我单击 router-link 时 this.auth 没有更新)
已编辑:使用计算 属性 解决了它。
<template>
<v-app>
<header-component v-if="auth" />
<sidebar-component v-if="auth" />
<router-view></router-view>
</v-app>
</template>
<script>
import Sidebar from "./components/Sidebar"
import Header from "./components/Header"
export default{
name: 'App',
components: {
'sidebar-component': Sidebar,
'header-component': Header,
},
computed: {
auth ()
{
return (!localStorage.getItem("auth")) ? false : true
}
}
}
</script>
您可以删除数据中的 auth declare,然后像这样使用计算:
computed {auth (){return (!localStorage.getItem("auth")) ? false : true}}
我正在尝试检查是否有经过身份验证的用户以呈现边栏和 header。 如果未通过身份验证,侧边栏和 header 不会呈现,以便仅显示登录或注册。但是我的 this.auth 数据在我重新加载页面之前没有得到更新。我知道 vuejs 上可能有一个功能会更频繁地更新这个变量? (我的侧边栏包含 router-links 以加载我的其余组件,但是当我单击 router-link 时 this.auth 没有更新)
已编辑:使用计算 属性 解决了它。
<template>
<v-app>
<header-component v-if="auth" />
<sidebar-component v-if="auth" />
<router-view></router-view>
</v-app>
</template>
<script>
import Sidebar from "./components/Sidebar"
import Header from "./components/Header"
export default{
name: 'App',
components: {
'sidebar-component': Sidebar,
'header-component': Header,
},
computed: {
auth ()
{
return (!localStorage.getItem("auth")) ? false : true
}
}
}
</script>
您可以删除数据中的 auth declare,然后像这样使用计算:
computed {auth (){return (!localStorage.getItem("auth")) ? false : true}}