Ошибка Firebase: функция CollectionReference.doc () требует, чтобы ее первый аргумент имел тип непустую строку, но это был: пользовательский объект Q - PullRequest
0 голосов
/ 19 сентября 2019

Я пытаюсь использовать хуки, чтобы обновить состояние списка данных.Я использую реагировать родной.Я даже не знаю, что такое пользовательский объект Q.: /

function userStoresList() {
  const [userStores, userStoresUpdate] = useState([]);
  const uid = firebase.auth().currentUser;
  useEffect(() => {
    firebase
      .firestore()
      .collection('users')
      .doc(uid)
      .collection('stampcards')
      .onSnapshot(snapshot => {
        const newUserStores = snapshot.docs.map(doc => ({
          id: doc.id,
          ...doc.id(),
        }));
        userStoresUpdate(newUserStores);
      });
  }, []);
  return userStores;
}

function UserStampScreen() {
  console.log('Initial Render (step 1)');
  const userStores = userStoresList();



{userStores.map(store => (
              <StampCards
                key={store.id}
                name={store.name}
                promotion={store.promotion}
                stamps="5/10 Stamps"
                image={store.image}
              />
            ))}

Я пытаюсь понять, почему она выводит эту ошибку: Ошибка

Если вам, ребята, нужна дополнительная информация, просто спросите.np

1 Ответ

0 голосов
/ 19 сентября 2019

firebase.auth().currentUser возвращает не просто uid, а объект, который содержит uid.

Вы можете просто изменить:

const uid = firebase.auth().currentUser

на

const { uid } = firebase.auth().currentUser
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...