【发布时间】:2016-02-14 19:33:45
【问题描述】:
我正在为我的项目使用 KrakenJS 节点框架,并使用 Firebase 作为数据存储。我想要实现的是,一旦用户登录,它将检索数据 (JSON) 并将其传递给灰尘模板,以便我可以循环并在页面上呈现数据。
但由于 Firebase 是异步的,因此在收集来自 Firebase 的任何数据并将其放入要发送到dustjs模板的 JSON 对象之前,我似乎返回了一个空 JSON。
我的代码示例:
var userBoards = {},
getBoardDetails = function(boardList) {
for (var key in boardList) {
if (boardList.hasOwnProperty(key)) {
request(firebasePath+'/boards/'+key+'.json?auth='+token, function (error, response, body) {
if (!error && response.statusCode == 200) {
userBoards[key] = JSON.parse(body);
}
});
}
}
return userBoards; // Once populated return back JSON object
},
getBoardList = function(uid, token) {
request(firebasePath+'/user-boards/'+uid+'.json?auth='+token, function (error, response, body) {
if (!error && response.statusCode == 200) {
return getBoardDetails(JSON.parse(body)); // Show the HTML for the Modulus homepage.
}
});
};
我的问题是,我该如何返回:
- 我的模板中的每个单独的值,以便它们单独呈现
- 将 userBoards 的整个 JSON 返回到我的模板,以便我可以遍历这些值。
【问题讨论】:
-
你似乎知道为什么不能返回值:它还没有加载。你有什么问题?
-
哎呀,似乎我错过了实际问题。更新原帖
标签: json node.js firebase kraken.js