【发布时间】:2021-11-17 19:24:29
【问题描述】:
我正在尝试从 Firebase/Firestore 返回用户集合,但是当我在控制台中检查它时,我拥有的代码没有返回任何内容。你能帮我吗,我是Vue的新手?我正在尝试查找与当前登录的用户具有相同显示名称但我被卡住的用户。
<template>
<p>Process Payroll</p>
<h1>{{ user.displayName }} </h1>
<h1>{{ docs }} </h1>
</template>
<script>
import getUser from '@/composables/getUser'
import { ref } from 'vue'
import { projectFirestore } from '../firebase/config'
export default {
setup(){
const { user } = getUser()
const lastName = ref('')
const firstName = ref('')
const docs = ref('')
const returnUser = async () => {
const res = await projectFirestore.collection('users').get()
if (!error.value) {
console.log(res.docs)
const doc = res.docs.filter((user1) =>{
if (user1.displayName == user.displayName){
return user.lastName
}
})
docs.value = doc
}
}
return {user, docs, returnUser }
}
}
</script>
<style>
</style>
【问题讨论】:
-
你能分享一下
getUser()的样子吗? -
首先,这个条件需要改变。
if (user.displayName == user.displayName){ return user.lastName }。这对于阵列中的所有用户都是正确的。或许,您可以将传递给过滤函数的变量重命名为userObj。其次,您为什么不只是需要的特定用户,而不是获取整个集合然后在客户端将其过滤掉?
标签: javascript firebase vue.js google-cloud-firestore