我搜索过,但所有答案都很旧,所以也许有更好的方法。我正在尝试从 Firebase DB 中获取一个随机项目,如下所示:
我想获得一个随机用户,仅此而已。
有任何想法吗?
编辑:似乎这个解决方案不起作用,因为“limitToFirst”和“limitToLast”不允许一起使用。作为参考,这是建议的(不起作用)解决方案,假设您知道用户数量:
const numberOfUsers = 15;
const randomIndex = Math.floor(Math.random() * numberOfUsers);
var ref = firebase.database().ref('companies/01/users');
ref.limitToFirst(randomIndex).limitToLast(1).once('value').then(snapshot =>
{
var user = snapshot.val();
// do something with the user data
});
如果您不知道有多少个子级(或者在其他地方存储了子级列表),则在不首先接收树中的所有子级的情况下,没有直接的方法可以解决此问题。看在Firebase中,有没有一种方法可以在不加载所有节点数据的情况下获取节点的子节点数量? https://stackoverflow.com/questions/15148803/in-firebase-is-there-a-way-to-get-the-number-of-children-of-a-node-without-load了解更多信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)