Я создал три коллекции, потому что хочу иметь возможность фильтровать поиск по задачам или пользователям и т. д.
Моя коллекция Firebase выглядит так:
Collection 1 - (Users)
- username
- name
Collection 2 - (Tasks)
- taskname
- points
Collection 3 - (taskData)
- userId (id from users collection)
- taskId (id from task collection)
- timestamp
React Typescript — получение данных коллекции
interface UserTask {
id: String;
taskId: String;
userId: String;
date: Date;
}
const [userTasks, setUserTasks] = useState<UserTask[]>([]);
const getTaskData = () => {
const taskRef = firestore.collection('taskData');
taskRef.get().then((snapshot) => {
const taskData = snapshot.docs.map((doc) => ({
id: doc.id,
...doc.data()
}))
console.log(taskData)
})
}
Я могу получить TaskData, который имеет userId и TaskId, но не смог присоединиться к таблицам и получить Users.name и Tasks.taskname. Я хочу получить вывод, как показано ниже. Как мне это сделать?
{
"taskName1": [
{
"name": "John",
"date": "12.01.2002"
},
{
"name": "Maya",
"date": "15.01.2002"
},
{
"name": "Hanna",
"date": "13.01.2003"
}
],
"taskName2": [
{
"name": "Maya",
"date": "20.04.2003"
},
{
"name": "Maya",
"date": "17.06.2003"
}
],
"taskName3": [
{
"name": "John",
"date": "21.05.2003"
}
]
}