sorry about my english. I use sessionstorage for keeping data. In sessionstorage have data enter image description here
but in html, not showing data form sessionstorage. when I get only {{currentUser}} in html show like this enter image description here mycode services
JavaScript
x
31
31
1
import { Injectable } from '@angular/core';
2
3
const USER_KEY = 'auth-user';
4
5
@Injectable({
6
providedIn: 'root'
7
})
8
export class TokenStorageService {
9
constructor() { }
10
11
signOut(): void {
12
window.sessionStorage.clear();
13
}
14
15
16
17
public saveUser(user: any): void {
18
window.sessionStorage.removeItem(USER_KEY);
19
window.sessionStorage.setItem(USER_KEY, JSON.stringify(user));
20
}
21
22
public getUser(): any {
23
const user = window.sessionStorage.getItem(USER_KEY);
24
if (user) {
25
return JSON.parse(user);
26
}
27
28
return {};
29
}
30
}
31
html
JavaScript
1
22
22
1
<div class="container" *ngIf="currentUser; else loggedOut">
2
<header class="jumbotron">
3
<h3>
4
<strong>{{ currentUser.employee_code }}</strong> Profile
5
</h3>
6
</header>
7
<p>
8
<strong>Token:</strong>
9
{{ currentUser.accessToken.substring(0, 20) }}
10
{{ currentUser.accessToken.substr(currentUser.accessToken.length - 20) }}
11
</p>
12
<p>
13
<strong>Emp:</strong>
14
{{ currentUser }}
15
</p>
16
17
</div>
18
{{ currentUser }}
19
<ng-template #loggedOut>
20
Please login.
21
</ng-template>
22
and component
JavaScript
1
19
19
1
import { Component, OnInit } from '@angular/core';
2
import { TokenStorageService } from '../../../services/token-storage.service';
3
4
@Component({
5
selector: 'app-home',
6
templateUrl: './home.component.html',
7
styleUrls: ['./home.component.css']
8
})
9
export class HomeComponent implements OnInit {
10
currentUser: any;
11
constructor(private token: TokenStorageService) { }
12
13
ngOnInit(): void {
14
this.currentUser = this.token.getUser();
15
console.log(this.currentUser = this.token.getUser())
16
}
17
18
}
19
how i can do to use please help me
this image for {{ currentUser|json}} {{ currentUser|json}}
Advertisement
Answer
In TokenStorageService
change getUser()
method.
JavaScript
1
4
1
public getUser(): any {
2
return JSON.parse(window.sessionStorage.getItem(USER_KEY));
3
}
4
In HTML you are printing {{ currentUser }}
Which will be an object. You need to specify the property of object.
Note: If you want to see the object in html use json
pipe. ({{ currentUser | json }}
)