使用 Firebase 创建 Feed 时可能出现未处理的承诺拒绝
2021-01-26
1025
当我尝试根据用户关注的不同用户 ID 整理帖子提要时,我遇到了以下错误。
Possible Unhandled Promise Rejection (id: 0): TypeError: undefined is not an object (evaluating 'snapshot.query.EP.path')
我正在使用 redux & firebase/firestore,错误发生在以下操作的第 581343114 行
export function fetchUsersFollowingPosts(uid) {
return ((dispatch, getState) => {
firebase.firestore()
.collection("posts")
.doc(uid)
.collection("userPosts")
.orderBy("creation", "asc")
.get()
.then((snapshot) => {
const uid = snapshot.query.EP.path.segments[1];
const user = getState().usersState.users.find(el => el.uid === uid);
let posts = snapshot.docs.map(doc => {
const data = doc.data();
const id = doc.id;
return { id, ...data, user }
})
for(let i = 0; i< posts.length; i++){
dispatch(fetchUsersFollowingLikes(uid, posts[i].id))
}
dispatch({ type: USERS_POSTS_STATE_CHANGE, posts, uid })
})
})
}
3个回答
是的,您正在做 simcoder instagram 克隆项目 非常感谢 henry 提供您的解决方案,最后我得到了问题的答案,请按照以下步骤解决问题
只需将此
dispatch(fetchUserFollowingPosts(user.id))
替换为此
dispatch(fetchUserFollowingPosts(user.uid))
只需将其替换为
user.uid
然后将此
const uid = snapshot. query.EP.path.segments[1]
替换为此
const uid = snapshot.docs[0].ref.path.split('/')[1]
它适用于😁 codenanshu
Anshu Meena
2021-07-20
您也在做 simcoder insta 的事情吗?
我刚刚用:
dispatch(fetchUserFollowingPosts(user.uid))
替换了此:
dispatch(fetchUserFollowingPosts(user.id))
只需将其替换为
user.uid
henry blue throttle unedited
2021-04-22