【发布时间】:2017-07-04 07:43:53
【问题描述】:
我有一个包含 json 数据的 firebase 数据库,我将它附加到 cardViews 中,我想在它单击时获取 cardView 的键,但它返回数据库中所有对象的数组 这是我的 index.js:
var rootRef = firebase.database().ref().child("Stories");
rootRef.on("child_added", snap => {
var title = snap.child("Story Title").val();
var content = snap.child("Story Content").val();
$("#stories").append("<div id=\"cold\" class=\"col s8 m6\"><div
class=\"card\"><div class=\"card-image\"><img
src=\"https://www.joshmorony.com/wp-content/uploads/2016/11/firebase.png\">
<a class=\"btn-floating halfway-fab waves-effect waves-light red\"><i
class=\"material-icons\">info</i></a></div><div class=\"card-content\"><p
onclick=\"viewKey()\">" + title + "</p></div></div></div>");
});
function viewKey() {
firebase.database().ref('/Stories/').once('value').then(function(snapshot) {
var storiesArray = snapshot.val();
var keys = Object.keys(storiesArray);
for (var i = 0; i < keys.length; i++) {
var currentStory = storiesArray[keys[i]];
console.log(currentStory);
}
});
}
对象数组: [“-Ko8JpEjsdN2KGBdIG3f”、“-Ko8JtdcEBICVZqIXLdO”、“-Ko8TvZuu0Wh_XDGa1YW”、“-KoBR0NmVmerjomE63-V”、“-KoBSOybd5ymvOwz0Ip6”]
【问题讨论】:
-
在 for 循环中尝试 console.log(keys[i])
-
也仍然返回所有对象键数组
-
你能发布你的 storiesArray 对象吗
-
您的代码会在
console.log(currentStory)出现错误,因为currentStory仅在for循环内定义 -
我编辑了问题
标签: javascript jquery firebase firebase-realtime-database