Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Geofire立即查询,而不是1乘1_Javascript_Firebase_Geofire - Fatal编程技术网

Javascript Geofire立即查询,而不是1乘1

Javascript Geofire立即查询,而不是1乘1,javascript,firebase,geofire,Javascript,Firebase,Geofire,下面是我的代码片段,它首先查询地理键,然后使用值事件查找相关数据。但有一个问题,键是以1乘1的方式返回的,所以我的列表视图也会按行显示。如何一次查询地理键 geoQuery.on('ready', () => { geoQuery.cancel() }) geoQuery.on("key_entered", (key, location, distance) => { postsRef.child(key).once('value', (snapshot) => {

下面是我的代码片段,它首先查询
地理键
,然后使用
事件查找相关数据。但有一个问题,键是以1乘1的方式返回的,所以我的列表视图也会按行显示。如何一次查询
地理键

geoQuery.on('ready', () => {
  geoQuery.cancel()
})

geoQuery.on("key_entered", (key, location, distance) => {
  postsRef.child(key).once('value', (snapshot) => {
    dispatch({
      type: FETCH_NEARBY_SUCCESS,
      response: normalize(snapshot.val(), schema.post)
    })
  })
})

这是预期的行为:
key\u entered
事件对最初在范围内的每个键触发一次,然后对进入范围的每个键触发一次

如果要在加载初始数据后执行某些更新,例如延迟更新屏幕,则可以侦听
ready
事件。从:

ready
从服务器加载此查询的初始状态时触发一次。触发与加载数据相关的所有其他事件后,
ready
事件将触发


我想不出我能做些什么来延迟屏幕更新,使其在
ready
事件中看起来平滑?加载一批数据后,将触发
ready
事件。因此,如果在获得
ready
事件之前不向UI发送任何更新,则可以延迟更新屏幕,直到加载初始数据。明白了。非常感谢。