recherche

Maison  >  Questions et réponses  >  le corps du texte

Les Hooks React Firestore ne parviennent toujours pas à se mettre à jour lorsque l'autorisation de lecture est accordée

J'utilise des hooks React-Firebase, en particulier useDocumentData, afin d'obtenir le document et de le maintenir à jour.

Lorsque le hook s'initialise, la lecture du document n'est pas encore autorisée (en raison d'une certaine condition dans les règles de sécurité de Firestore qui n'est pas remplie), donc la lecture échoue avec FirebaseError: 缺少或权限不足。

Cependant, après quelques minutes, la base de données a changé et le document a pu être lu avec succès.

Si j'actualise la page, cela fonctionne bien - Sinon, le hook ne se met pas à jour automatiquement.

Comment puis-je résoudre ce problème ? J'en ai besoin pour détecter automatiquement l'autorisation de lire ce document et de mettre à jour ses données à tout moment.

P粉763662390P粉763662390476 Il y a quelques jours516

répondre à tous(1)je répondrai

  • P粉970736384

    P粉9707363842023-09-10 17:13:17

    Vous ne pourrez pas accomplir cela sans vous interroger vous-même. Une fois qu'un écouteur de requête échoue en raison d'une erreur d'autorisation, il ne continuera pas à écouter. Il n'y a aucun rappel pour vous indiquer quand les requêtes peuvent à nouveau être autorisées.

    Vous pouvez choisir l'une des deux manières suivantes :

    1. Configurez un autre écouteur de requête pour les données modifiées afin de permettre à la requête d'origine de fonctionner, puis réémettez la requête d'origine.
    2. Ou vous devez interroger la requête périodiquement pour savoir si elle fonctionne.

    répondre
    0
  • Annulerrépondre