我在Firestore数据库中有一个“概要文件”集合。该集合包含我需要的大部分数据,但包含用户的创建日期。在“身份验证”数据库中,有一个创建的列,其中包含用户创建的日期。
我想在列表中显示用户创建的日期。从Firebase集合“Profiles”中检索到的所有数据都显示良好,但我在从身份验证中获取数据时遇到了问题。我得到了一个N/A作为后备,以防无法成功检索日期。到目前为止,我所有的细胞都显示N/A。
v-for循环到配置文件中,但不是身份验证,也许这就是问题所在?
我错过了什么?
<tr v-for="user in profiles" :key="user.id">
<td scope="col-1" class="fs-7 py-2 px-3">{{ formatDate(user) }}</td>
</td>
</tr>
脚本在这里:
import { ref, onMounted } from "vue";
import { db } from "../firebase";
import {
collection, deleteDoc, doc,
getDocs, updateDoc,
} from "firebase/firestore";
export default {
setup() {
const profiles = ref([]);
const fetchData = async () => {
try {
const profilesSnapshot = await getDocs(collection(db, "profiles"));
profiles.value = profilesSnapshot.docs.map((doc) => {
return {
id: doc.id,
...doc.data(),
};
});
} catch (error) {
console.error("Error fetching data:", error);
}
};
onMounted(async () => {
await fetchData();
});
const formatDate = (user) => {
if (user.metadata && user.metadata.creationTimestamp) {
const date = new Date(user.metadata.creationTimestamp.seconds * 1000); // Assuming timestamp is in seconds
return date.toLocaleDateString();
} else {
return 'N/A'; // This is the value I am getting now.
}
};
return {
profiles,
formatDate,
};
},
};