Firebase Firestore返回无序数据



当我使用JS客户端sdk运行以下代码

import { firestore } from "../../../firebase";
export default async (userId) => {
const userRef = firestore.collection("users").doc(userId);
const userDoc = await userRef.get();

if (!userDoc.exists) {
throw new Error("User doesn't exist");
}
console.log(JSON.stringify(userDoc.data(), null, 2));
const userData = {
id: userDoc.id,
...userDoc.data(),
};
return userData;
};

多次,对于相同的userId,不改变数据库中的任何内容,我得到相同的数据,但无序字段:

{ // 1st fetch
name: "a",
age: 10,
avatar: {
uri: "x",
thumbnailUri: "y"
}
}

....

{ // 2nd fetch
name: "a",
avatar: {
thumbnailUri: "y",
uri: "x"
},
age: 10
}

这背后的原因是什么?是否有可能总是得到一个有序的版本?

Firestore文档包含JSON格式的数据,并且无法保证JSON对象中字段的顺序。如果您需要对字段进行排序,则必须在客户端上进行。

请参阅这篇文章了解更多信息

相关内容

  • 没有找到相关文章