我创建了一个简单的注射器,我正在使用它进行模拟测试,直到我觉得实现我的提供者来检索用户数据。它看起来像这样:
import { Injectable } from '@angular/core';
@Injectable()
export class Identity {
public userInfo: {id: 1};
}
我在我的一个组件中请求它:
export class TabsPage {
constructor(public identity: Identity) {
console.log(this.identity.userInfo);
}
}
标识是否正常注入,但userInfo未定义,这里发生了什么?如何通过我的提供商传递数据?
答案 0 :(得分:5)
您正在为用户信息定义类型(打字稿类型),而不是值,因此它是undefined
。 public userInfo = { id: 1 };
初始化其价值。 (注意你的问题中有冒号:
,而不是=
。