我正在尝试从firebase获取数据并应用于我的scope.timeline。 我有一个函数timelineDB来访问firebase并返回值。
调试我的代码,我在某些方面收到了值。
$scope.timeline = timelineDB();
console.log($scope.timeline); //Here I have value
但是当我在index.html中调用时,这个值并没有反映在scope.timeline中,你的值为null。
{{timeline}}
[]
版本:
/**
* @license AngularJS v1.6.6
* (c) 2010-2017 Google, Inc. http://angularjs.org
* License: MIT
*/
文件javascript:
function timelineDB(){ const db = firebase.database(); const ref = db.ref('timeline/-L-g_Ea4colCKXtMstqE'); ref.orderByChild('data').on('value', showData, showError); var itens = []; function showData(item){ item.forEach(function(child){ console.log(child.val()); itens.push({data: child.val().data}); }) } function showError(err){ console.log(err); } console.log(itens); return itens; };
档案index.html
angular.module("horizontalTimeline", []);
angular.module("horizontalTimeline").controller("horizontalTimelineCtrl", function($scope){ //, $http
$scope.timeline = [];
$scope.timeline = timelineDB();
console.log($scope.timeline); //Here I have value
$scope.$apply(); //Don't works
});
{{timeline}} //NULL