【问题标题】:I created application in angular using firebase, how to make possible for each user to have their own table with tasks [closed]我使用firebase以角度创建应用程序,如何让每个用户拥有自己的任务表[关闭]
【发布时间】:2021-02-02 00:00:39
【问题描述】:
【问题讨论】:
标签:
javascript
angular
typescript
firebase
ecmascript-6
【解决方案1】:
为每个用户创建单独的任务表,您可以创建一个集合结构添加一个具有登录用户名或其键的节点,并在每个节点内添加任务集合。
例如:
{
"User1" : {
tasks : [
{
taskName : "demotask"
},
{
taskName : "demotask"
}
]
},
"User2" : {
tasks : [
{
taskName : "demotask"
},
{
taskName : "demotask"
}
]
}
}
Firebase 将登录用户详细信息存储在浏览器存储中,因此您需要检查用户是否登录。
使用*ngIf 可以显示隐藏菜单项。
例如:
//create common helper Service
checkLoginUser() {
let user = null;
// Code to check if the user logged in or not.
// If there is a user in local storage save in the "user" variable.
return user? true : false;
}
// Inject service inside component and store user status in component variable
isUserLoggedIn = this.checkLoginUser();
// Handle Show hide using *ngIf inside template
<ul>
<li *ngIf="isUserLoggedIn">Tasks</li>
<li *ngIf="isUserLoggedIn">Add Task</li>
<li *ngIf="isUserLoggedIn">Logout</li>
</ul>