2016-03-01 50 views
0

GeoFire使用未公開的結構保存數據。我怎樣才能讓它像官方的例子一樣保存。我沒有遵循任何特定的教程或指南,但我的工作主要依據這些示例。GeoFire結構與文檔不匹配

我已經能夠複製此問題:

JS:

var ref = new Firebase("https://skgz3dfvs9.firebaseio-demo.com"); 
var geoFire = new GeoFire(ref.child("_geofire")); 

geoFire.set("ADb3b3j2"+parseInt(Math.random(1000)*10000), [20.573771400000002, -100.35827]).then(function() { 
    document.getElementById("result").innerHTML = "Provided key has been added to GeoFire"; 
}, function(error) { 
    document.getElementById("result").innerHTML = "Error: " + error; 
}); 

HTML

<div id="result"></div> 

https://jsfiddle.net/johnhparkerg/c0852c6s/1/

結果以JSON看起來像這樣:

{ 
    "_geofire":{ 
     "i":{ 
     "9g8th336fu:ADb3b3j2":true, 
     "9g8th336fu:ADb3b3j21770":true, 
     "9g8th336fu:ADb3b3j23390":true, 
     "9g8th336fu:ADb3b3j24122":true, 
     "9g8th336fu:ADb3b3j25036":true, 
     "9g8th336fu:ADb3b3j27393":true, 
     "9g8th336fu:ADb3b3j28182":true, 
     "9g8th336fu:ADb3b3j28276":true, 
     "9g8th336fu:ADb3b3j29206":true, 
     "9g8th336fu:ADb3b3j29674":true 
     }, 
     "l":{ 
     "ADb3b3j2":[ 
      20.573771400000002, 
      -100.35827 
     ], 
     "ADb3b3j21770":[ 
      20.573771400000002, 
      -100.35827 
     ], 
     "ADb3b3j23390":[ 
      20.573771400000002, 
      -100.35827 
     ], 
     "ADb3b3j24122":[ 
      20.573771400000002, 
      -100.35827 
     ], 
     "ADb3b3j25036":[ 
      20.573771400000002, 
      -100.35827 
     ], 
     "ADb3b3j27393":[ 
      20.573771400000002, 
      -100.35827 
     ], 
     "ADb3b3j28182":[ 
      20.573771400000002, 
      -100.35827 
     ], 
     "ADb3b3j28276":[ 
      20.573771400000002, 
      -100.35827 
     ], 
     "ADb3b3j29206":[ 
      20.573771400000002, 
      -100.35827 
     ], 
     "ADb3b3j29674":[ 
      20.573771400000002, 
      -100.35827 
     ] 
     } 
    } 
} 

https://skgz3dfvs9.firebaseio-demo.com/

當結果應該是這樣的:

{ 
    "fish1":{ 
     "g":"pns0h0mf2u", 
     "l":[ 
     -53.435719, 
     140.808716 
     ] 
    }, 
    "fish2":{ 
     "g":"u417k3dwub", 
     "l":[ 
     56.83069, 
     1.94822 
     ] 
    }, 
    "fish3":{ 
     "g":"8m3rz3s480", 
     "l":[ 
     30.902225, 
     -166.66809 
     ] 
    } 
} 

(這種結構是橫跨關於火力和geofire實例和文檔無處不在)

這裏是examples

我希望我很清楚,否則讓我知道。

+0

而不是鏈接到儀表板,包括(最小)JSON到你的問題(作爲文本)。鏈接腐爛,因爲你鏈接到的問題中的圖像顯示。你的jsfiddle是空的順便說一句。 –

+0

除此之外,我不明白你在問什麼。爲什麼結構是錯的?你是怎麼寫這個結構的?與教程不同的事實是無關緊要的,除非您試圖遵循該教程。但是,如果是這種情況,請顯示您使用的確切最小代碼。沒有[mcve](http://stackoverflow.com/help/mcve)就很難提供幫助。 –

+0

爲了讓問題更加明確,我已經編輯過,請儘可能給我一些關於問題的明確性的意見,如果可能,請提供一些指導。 – JohnHPG

回答

0

問題是GeoFire的一個早期版本以不同的格式存儲數據,問題是沒有任何地方提及......。