Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/477.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当我刷新时,用户在Vue和Firebase项目中消失_Javascript_Firebase_Vue.js_Firebase Authentication - Fatal编程技术网

Javascript 当我刷新时,用户在Vue和Firebase项目中消失

Javascript 当我刷新时,用户在Vue和Firebase项目中消失,javascript,firebase,vue.js,firebase-authentication,Javascript,Firebase,Vue.js,Firebase Authentication,我的代码在下面 // getUser.js import { ref } from '@vue/reactivity' import { projectAuth } from '../firebase/config.js' const user = ref(projectAuth.currentUser) projectAuth.onAuthStateChanged( _user => { user.value = _user console.log("User a

我的代码在下面

// getUser.js

import { ref } from '@vue/reactivity'
import { projectAuth } from '../firebase/config.js'

const user = ref(projectAuth.currentUser)

projectAuth.onAuthStateChanged( _user => {
  user.value = _user
  console.log("User available")
})

const getUser = () => {
  return ( user )
}

export default getUser;

//Account.vue
欢迎
从“../composables/getUser.js”导入getUser
导出默认值{
设置(){
const{user}=getUser();
console.log(用户)
返回{user}
}
}
当我刷新时,欢迎不会出现。并且console.log如下所示


我可以知道我的代码是否正确吗?因为尽管我得到了一个新的用户值,v-if似乎没有更新。谢谢

您的
getUser
函数直接返回对用户结构的引用,但您正在尝试在此处的赋值中分解结构:
const{user}=getUser()。由于ref对象没有
user
属性,因此
user
变量始终未定义。相反,请尝试
constuser=getUser()。你好,谢谢你解决了我的问题!我花了一个多小时在上面,结果发现这是我的基本原理,现在还没有。再次感谢你,朋友!这听起来像是一个答案@kdau!:-D
// Account.vue
<template>
  <h3 v-if="user">Welcome</h3>
</template>

<script>
import getUser from '../composables/getUser.js'

export default {
  setup() {
    const { user } = getUser();
    console.log(user)

    return { user }
  }
  
}
</script>