firebase 无法从firestore数据库v9中删除文档

bkhjykvo  于 2023-02-25  发布在  其他
关注(0)|答案(2)|浏览(130)

存在集合users,并且在用户内部存在文档userID,并且在该文档内部存在另一个集合favourite,并且在该集合内部,存在保存的收藏夹数据favouriteId的id。
因此,我想删除favourite集合中的数据。
我的数据库类似于:-users(collection)>userID(document)>favourite(collection)>favouriteId(document)
下面是我的代码:

const deleteDoc = async (id) => {
    const userRef = collection(db, "users");
    const favRef = collection(
      userRef,
      `${firebaseAuth?.currentUser?.uid}/favourite`
    );
    const favId = doc(favRef, id);
    await deleteDoc(favId);
  };
  • 收藏夹ID =id*,* 用户ID =firebaseAuth?.当前用户?.uid*

我用的是firebase v9。

km0tfn4u

km0tfn4u1#

你的代码大部分是正确的,你只需要在代码中做一些这样的修改

const deleteDocu = async (userId, favouriteId) => {
const userRef = collection(db, "users");
const favRef = collection(userRef, userId, "favourite");
const favId = doc(favRef, favouriteId);
await deleteDoc(favId);
};
u5i3ibmn

u5i3ibmn2#

函数的命名方式与Firebase函数相同。
只需更改函数名称

const deleteDocu = async (id) => {
    const userRef = collection(db, "users");
    const favRef = collection(
      userRef,
      `${firebaseAuth?.currentUser?.uid}/favourite`
    );
    const favId = doc(favRef, id);
    await deleteDoc(favId);
  };

相关问题