Angular 显示登录用户的用户名(2)
这似乎是一个非常简单的问题,但我对Angular2不熟悉,对组件之间的关系有点困惑。我有一个登录页面,当用户输入用户名时,我希望用户名显示在仪表板上,类似“欢迎,詹姆斯” 我有一个Angular 显示登录用户的用户名(2),angular,angular2-forms,Angular,Angular2 Forms,这似乎是一个非常简单的问题,但我对Angular2不熟悉,对组件之间的关系有点困惑。我有一个登录页面,当用户输入用户名时,我希望用户名显示在仪表板上,类似“欢迎,詹姆斯” 我有一个login.html页面,一个loginHTMLcomponent组件,它有一个templateurl到login.html页面及其父项login.ts。 我有dashboard.ts,它是dashboard.component.ts的父级(具有仪表板页面的HTML) 基本上,我是如何从login.html中的输入字段
login.html
页面,一个loginHTMLcomponent
组件,它有一个templateurl
到login.html
页面及其父项login.ts。
我有dashboard.ts
,它是dashboard.component.ts
的父级(具有仪表板页面的HTML)
基本上,我是如何从login.html中的输入字段中获取用户名以显示在dashboard.component.html中的……我可能已经详细解释了这一点。谢谢
我会尽量解释清楚一点
在my login.html中,我有如下内容:
input type = "text" [(ngModel="name")]
在我的dashboard.component.ts中,在选择器的内部,我会:
@Component({
selector: 'dashboardHTML',
template:
`
<body>
........
..........
<span ="user">Welcome, {{user}}</span>
...
`
在我的login.HTMLComponent
(它有一个指向login.component.html
的模板URL)中,我有导出类LoginHTMLComponent{
公共名称:{};
/////
在我的name.service.ts
中,我有这个
import { Injectable } from '@angular/core';
import {LoginHTMLComponent} from "./LoginComponents/login.HTMLcomponent";
@Injectable()
export class NameService {
getName(){
return name;
}
}
我不确定我在这里叫的名字是否正确。
谢谢在您的情况下,服务可能是一个不错的选择。将登录数据存储在服务中,并从需要数据的任何组件访问它。
使用
@Injectable()
装饰服务,然后将其注入组件。在您的情况下,服务可能是一个不错的选择。将登录数据存储在服务中,并从需要数据的组件访问它。
使用
@Injectable()装饰服务
,然后将其注入组件。不要试图将用户名从登录组件
传递到仪表板组件
,而应该通过公共服务
获取用户名。用户名可能是用户登录的后端响应的一部分。该响应即lo在用户中,存储在服务中,该服务可以注入到您的每个组件中
服务通常是在不在父/子层次结构中的组件之间交换数据的好主意
关于你的服务
该服务不应引用LoginHTMLComponent
或任何其他组件。将NameService
插入LoginComponent
(和仪表板组件
)的构造函数中,如下所示
private constructor(private nameService:NameService) {...}
当然,导入
NameService
而不是试图将用户名从登录组件
传递到仪表板组件
,您应该通过公共服务
获取用户名。用户名可能是来自用户登录的后端的响应的一部分。已登录的用户存储在服务中,该服务可注入到您的每个组件中
服务通常是在不在父/子层次结构中的组件之间交换数据的好主意
关于你的服务
该服务不应引用LoginHTMLComponent
或任何其他组件。将NameService
插入LoginComponent
(和仪表板组件
)的构造函数中,如下所示
private constructor(private nameService:NameService) {...}
当然,导入
NameService
不客气。如果这对你有帮助,别忘了投赞成票。我投了好票,但我没有足够的帖子显示出来,如果你有机会,你能看看我对我的帖子所做的编辑吗?谢谢,我明白了。在我的帖子中添加了一些行谢谢。效果很好。欢迎你。不要担心如果这对你有帮助,我会投票。我投了好票,但我没有足够的帖子来显示,如果你有机会,你能看看我对我的帖子所做的编辑吗?谢谢,我明白了。在我的帖子中添加了一些行谢谢。工作很有魅力。我投了好票,但我没有足够的帖子来显示,如果你有机会,你能看看我的帖子吗e编辑我的帖子?谢谢我投了好票,但我没有足够的帖子显示,如果你有机会,你能看看我对我帖子的编辑吗?谢谢