我想從我的數據庫檢索數據。我的代碼創建一個空數組,並在每次添加時向其添加一個子對象。然後創建列表(忽略MDL類)並將其添加到HTML文檔中。無法檢索到JavaScript數組的firebase快照數據
<script>
// get emergencies to array
var firebaseRef = firebase.database().ref('Incidents');
var emergencies = [];
// var emergencies = ['Test', 'Test 2', 'Test 3'];
firebaseRef.on('child_added', function(snap) {
snap.forEach(function (childSnap) {
console.log(childSnap.val());
emergencies.push(childSnap.val());
});
});
var opentag = '<ul class="mdl-list" id="emergenciesList">',
closetag = '</ul>',
array = [];
for (i = 1; i <= emergencies.length; i++) {
array[i] = '<li class="mdl-list__item">' + emergencies[i] + '</li>';
}
var newArray = array.join(" ");
document.getElementById('foo').innerHTML = opentag + newArray + closetag;
</script>
奇怪的是,在執行console.log()語句,檢索數據完全正常,但字符串操作後,newArray是不確定的。幫幫我!
非常感謝!這很有意義。有一個問題,但它仍然不起作用;我現在收到一個錯誤,「li.classList.append」不是一個函數。我也嘗試過「li.className」。這是爲什麼? – wasimsandhu
有趣。 [Element.classList](https://developer.mozilla.org/en-US/docs/Web/API/Element/classList)[相對良好的支持](http://caniuse.com/#feat=classlist) DOM方法。我在評論中添加了一個更兼容的備選方案。 –