如何将变量从一个组件传递到同一级别的另一个组件?我在Auth
中有用户变量组件服务
@Injectable({
providedIn: 'root'
})
export class AuthService {
private user: string = null;
getUser() {
return this.user;
}
setUser(username) {
sessionStorage.setItem('username', username);
this.user = sessionStorage.getItem('username');
console.log('VAMOS!!!', this.user);
}
}
在第一个组件中,我注入(inject)它,如果我获得用户变量的值,那么当用户进行身份验证时,我将其重定向为 this.router.navigate (['/ meet'])
也就是说,我可视化下一个组件。
在下一个名为 list-user 的组件中,我得到 null
在getUser ()
.
async ngOnInit() {
console.log('HOY', this.authService.getUser());
}
最佳答案
当您重定向到 ['/meet'] 时,Authservice 组件将从 DOM 中删除。
这就是它提供 null 的原因。
为什么不在当前组件中使用 sessionStorage.getItem?
async ngOnInit() {
console.log('HOY',sessionStorage.getItem('username'));
}
关于angular - 如何将变量从一个组件传递到同一级别的另一个组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56333442/