这里我试图用复选框显示组名。我想为用户创建隐私设置页面,在这个页面中我想隐藏或显示来自特定用户的个人资料信息。只有用户可以提供谁可以查看他的提供详细信息。对于此任务,我已为不同用户创建了组并将其分配给用户,这可以由用户和admin.once组分配给用户,用户可以看到数据访问来自该权限的get。 但我在这里的问题是我无法得到我用我的复选框绑定的组名,mistry在这里我可以在控制台中看到我的数据而不是在HTML上,因此我无法进一步开发我的< / p>
loadGroups(fromStart: boolean) {
var self = this;
if (fromStart) {
self.loading = true;
self.groups = [];
self.newGroups = [];
this.dataService.getTotalGroups().then(function (snapshot) {
self.start = snapshot.val();
self.getGroups();
});
} else {
self.getGroups();
}
}
getGroups() {
var self = this;
let startFrom: number = self.start - self.pageSize;
if (startFrom < 0) startFrom = 0;
this.dataService
.getGroupsRef()
.once("value", function (snapshot) {
console.log(snapshot.val());
self.itemsService
.reversedItems<IUserGroups>(self.mappingsService.getGroups(snapshot))
.forEach(function (group) {
self.groups.push(group);
});
self.start -= self.pageSize + 1;
self.events.publish("groups:viewed");
self.loading = false;
console.log(self.groups);//i can have all data here
});
}
<ion-item no-lines>
<ion-label>Make me discoverable by</ion-label>
<ion-toggle color="secondary"
[ngModel]='preferences[PREF_DISCOVERABLE]'
(ionChange)='changePreference($event, PREF_DISCOVERABLE)' (click)='onToggleClick()'></ion-toggle>
</ion-item>
<ion-item no-lines *ngIf="toggleClicked">
<div *ngFor="let choice of groups">
<ion-label>{{choice.groupName}}</ion-label>
<ion-checkbox value="choice"></ion-checkbox>
</div>
</ion-item>
我在控制台窗口中收到的数据
0 : {group_id: "-L9dQkPfCIapV6QC-ydK", groupName: "Panic", dateCreated: "2018-4-9"}
1 : {group_id: "-L9dQhZJWTJi735VIoxh", groupName: "All", dateCreated: "2018-4-9"}
2 : {group_id: "-L9dQcqZ_G2t1kv5_jzh", groupName: "Committee Members", dateCreated: "2018-4-9"
答案 0 :(得分:0)
我的愚蠢的错误我有包装标签和复选框与div不工作我已将整个项目包装到div现在它的工作。
<div *ngIf="toggleClicked" >
<ion-item *ngFor="let choice of groups" >
<ion-label>{{choice.groupName}}</ion-label>
<ion-checkbox value="choice"></ion-checkbox>
</ion-item>
</div>