gpt4 book ai didi

javascript - Vue.js 无法检查用户是否已登录计算属性

转载 作者:行者123 更新时间:2023-12-02 22:32:50 25 4
gpt4 key购买 nike

我想检查用户是否已登录 Firebase,但无法在计算属性中执行此操作。

我想要做的是根据用户是否登录来显示表单。

    <v-form
ref="form"
v-if="isSignedIn"
v-model="valid"
lazy-validation>
...

computed: {
isSignedIn() {
firebase.auth().onAuthStateChanged((user) => {
if (user) {
return true
} else {
return false
}
})
},

即使我使用观察者,该属性仍然是未定义

但是,这种方法是有效的。 (我检查用户是否在方法中登录并将结果分配给变量。)

<v-form
ref="form"
v-if="flag"
v-model="valid"
lazy-validation>
...

methods: {
isSignedIn() {
firebase.auth().onAuthStateChanged((user) => {
if (user) {
this.flag = true
} else {
this.flag = false
}
})
}
},
mounted() {
this.isSignedIn()
}

第一种方法有什么问题?

最佳答案

如果没有有关 Vue.js 组件代码的更多详细信息,很难为您提供帮助。

但是,请注意 documentation解释说:

The recommended way to get the current user is by setting an observer on the Auth object

firebase.auth().onAuthStateChanged(function(user) {
if (user) {
// User is signed in.
} else {
// No user is signed in.
}
});

关于javascript - Vue.js 无法检查用户是否已登录计算属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58839736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com