我正在尝试在我的 HTML 中显示登录用户的用户名。我使用 firebase 进行身份验证,使用 Angular 8 进行主要开发。完全支持 Firebase 集成,不会导致任何问题。但是当我尝试显示从 firebase 用户名获取的数据时,我不能这样做。
我做了很多 Google 搜索,包括阅读 Angular CLI 文档,还查看了以前在 stackoverflow 上提出的各种问题,但不知何故,我似乎无法理解。这是我的代码:
export class PortalComponent implements OnInit {
public username: string = null;
constructor() {
firebase.auth().onAuthStateChanged((user) => {
if (user) {
this.username = user.displayName;
}
});
}
}
这是我的 HTML 代码:
<h2>Welcome {{username}}!</h2>
我该如何解决?我的预期答案应该是Welcome Brian!
编辑:
我看了很多答案,其中大多数都是正确的实现,但是我不确定为什么这不起作用。我仍在寻找具有完整角度实现的答案,但目前我使用 jQuery 并且它可以工作。我做了什么:
更新的 HTML:
<h2>Welcome <span id="username"></span>!</h2>
更新的打字稿:
import { Component, OnInit } from '@angular/core';
import * as $ from 'jquery';
// Code removed for brevity
export class PortalComponent implements OnInit {
constructor() { }
ngOnInit() {
firebase.auth().onAuthStateChanged((user) => {
if (user) {
$('#username').html(user.displayName);
}
});
}
}