我有一个 react native 应用程序,我从Firebase Firestore数据库中获取用户.这可以正常工作. 但是,当我试图从User对象获取关注者长度时,它不会显示或更改,只有在我更改代码和应用程序刷新时才会更改.
我在某个地方读到,useEffect在第二个帧上运行,所以我try 将代码放在useEffect之外,但没有任何变化
const [followingLength, setFollowingLength] = useState(0);
const [followersLength, setFollowersLength] = useState(0);
useEffect(() => {
const userSub = onSnapshot(doc(firestore, "Users", userId), (doc) => {
setUser(doc.data())
if (user.following.length !== 0) {
setFollowingLength(user.following.length)
}
if (user.followers.length !== 0) {
setFollowersLength(user.followers.length)
}
});
});
<Text style={{ color: colors.white }}>{followingLength}</Text>
<Text style={{ color: colors.white }}>{followersLength}</Text>