我正在做一些与我创建的this plunker类似的东西。如何在AngularJS和UI-Bootstrap的模态函数之后在视图中保存成功图标? (Plunker)
在我的应用程序中,我使用的是Firebase/AngularFire。
在闯入者中,您可以看到当您登入会议时,图标变为成功图标。在我的应用程序,这是在哪里储存像这样的火力地堡这些信息:
$scope.join = function(hash) {
console.log(hash);
var ref = dbRef.ref('meetings/'+hash+'/users')
var meetingInfo = $firebaseArray(ref);
meetingInfo.$add({
date: firebase.database.ServerValue.TIMESTAMP,
user_name: $scope.name,
user: $scope.currentUser
}).then(function(ref) {
var key = ref.key;
var index = meetingInfo.$indexFor(key);
console.log(key, index);
$uibModalInstance.close();
});
};
所以得到的数据加入到火力地堡,然后模态关闭。
我也有一个类似的控制器和视图列出会议,就像在蹲点。
在榨汁机中,我通过$rootScope
发送变量,因此可以在listingController
中访问。这是有效的,但正如您所看到的,我只能签到一次会议,并且在刷新或签入另一次会议后,复选标记消失。
我想知道如何坚持这一改变,以便我在任何时间登记入住会议时都会留下复选标记。我想我需要在列表控制器中编辑某些内容,以便在抓取数据时检查是否有人登录了会议并显示复选标记,以下是我的Firebase列表控制器:
app.controller('listController', ['$scope', '$rootScope', '$firebaseArray', '$firebaseObject', '$uibModal', function($scope, $rootScope, $firebaseArray, $firebaseObject, $uibModal) {
var ref = firebase.database().ref('meetings');
var list = $firebaseObject(ref);
list.$loaded().then(function(data) {
$scope.lobbies = list;
});
}]);
编辑
的方式火力地堡存储的数据是这样的:
---meetings
------random hash (key)
---------date
---------name
---------attendees
------------random hash
---------------date
---------------name
当我做我的NG-重复是这样的:ng-repeat="(key, meeting) in meetings"
这样我就可以访问类的会议数据meeting.name
。我应该如何访问与会者来检查当前用户是否在参加会议?
SOLUTION
This question帮了我很多除了提供IDAN
这让我更好地理解了这个问题,我不知道我需要做什么。我现在更新了我的问题,以了解如何使用您提供的行:'user。$ id在会议中。attendees' –
其实,因为这更多的是火力地堡的问题我去寻找和发现这样一个问题:HTTP://stackoverflow.com/questions/31868286/accessing-nested-unique-key-values-in-firebase。这实际上正是我所寻找的,我只是不知道该怎么去问。然而,你提供的小代码片段帮助我,所以我将其标记为答案。 –
谢谢你。即使只是通过方向,也乐于提供帮助:-) – idan