如何在 Angular 中将数据传递给订阅者
How to pass a data to subscriber in Angular
我有一个订阅“User”的以下服务。
public getEmployees(): Observable<User> {
const url = `${this.baseUrl}/employee`;
return this.http.get<User>(url);
}
我的问题是如何使用用户数据调用 getEmployees。我正在尝试使用以下代码,但出现错误?
const _user: User = {
userId: "30294
}
this.userAccountService.getEmployees().subscribe((userprofile: _user) => {
console.log(userprofile.firstName);
});
错误:_user 引用了值,但在这里使用了一个类型
将 _user
更改为 User
。
您 return 可观察到 User
但在该方法中您假定数据类型为 az _user
.
this.userAccountService.getEmployees().subscribe((userprofile: User) => {
console.log(userprofile.firstName);
});
您正在使用 _user
作为 userprofile: _user
中的类型
像这样修复:
const _user: User = {
userId: "30294
}
this.userAccountService.getEmployees().subscribe((userprofile: User) => {
console.log(userprofile.firstName);
});
subscribe 方法的完成回调需要传递一个类型的变量。但是您传递的不是类型,而是变量本身。
这就是您收到错误的原因。
_user refer to value but is being used a type here
所以替换这个:-
userprofile: _user
有了这个:-
userprofile: User
你很高兴。
我有一个订阅“User”的以下服务。
public getEmployees(): Observable<User> {
const url = `${this.baseUrl}/employee`;
return this.http.get<User>(url);
}
我的问题是如何使用用户数据调用 getEmployees。我正在尝试使用以下代码,但出现错误?
const _user: User = {
userId: "30294
}
this.userAccountService.getEmployees().subscribe((userprofile: _user) => {
console.log(userprofile.firstName);
});
错误:_user 引用了值,但在这里使用了一个类型
将 _user
更改为 User
。
您 return 可观察到 User
但在该方法中您假定数据类型为 az _user
.
this.userAccountService.getEmployees().subscribe((userprofile: User) => {
console.log(userprofile.firstName);
});
您正在使用 _user
作为 userprofile: _user
像这样修复:
const _user: User = {
userId: "30294
}
this.userAccountService.getEmployees().subscribe((userprofile: User) => {
console.log(userprofile.firstName);
});
subscribe 方法的完成回调需要传递一个类型的变量。但是您传递的不是类型,而是变量本身。
这就是您收到错误的原因。
_user refer to value but is being used a type here
所以替换这个:-
userprofile: _user
有了这个:-
userprofile: User
你很高兴。