我试图在firestore数据库中查找集合中的文档数量,并将该数量分配给angularjs中的$scope变量。我知道firestore中的查询是异步工作的,我也在使用async/await。还是没有运气!!!下面是代码。
控制器代码:
myProject.controller("Dashboard", function($scope){
$scope.setCases = async function($scope){
const query = firestore.collection('Cases1');
const lowerLimit = firebase.firestore.Timestamp.fromDate(new Date(new Date().setHours(0,0,0,0)));
const upperLimit = firebase.firestore.Timestamp.fromDate(new Date(new Date().setHours(23,59,59,0)));
const currentTimestamp = firebase.firestore.Timestamp.fromDate(new Date());
//Todays cases
const snapshot1 = await query.where("start", ">=", lowerLimit).where("start", "<=", upperLimit).get();
$scope.todaysCases = snapshot1.size();
// Upcoming Cases
const snapshot2 = await query.where("start", ">", currentTimestamp).get();
$scope.upcomingCases = snapshot2.size();
}
});
html:
<div ng-controller="Dashboard">
<div ng-init="setCases(this)">
<p>{{todaysCases}}</p>
<p>{{upcomingCases}}</p>
</div>
注意:当我尝试将$scope变量打印到函数内的控制台时,它们将显示在控制台中,但无法使用html中的表达式访问它们。上面的html代码是我的观点。
对此问题的见解将不胜感激!!!
1条答案
按热度按时间7ivaypg91#
回答我自己的问题很奇怪,哈哈!!!下面的线做了这项工作。