如何解决无法使用我班级的静态属性
我在我的应用程序中使用工厂设计模式。在我的工厂类中,我有一个静态属性,它是一项服务。 我需要将此服务与我的工厂返回的对象一起发送。 但是,当我在“ContactPageProvider”类的构造函数中获取服务时,它是未定义的,我不知道为什么。
以下是不同的类: 工厂类:
@inject(ContactService)
export class CommonPageFactory {
private static _contactService : ContactService;
private constructor() {
}
public static getProvider(pageName : string) : ICommonPageProvider {
switch (pageName) {
case 'contact':
return new ContactPageProvider(this._contactService);
default:
throw new Error(`Invalid page name : ${pageName}.`);
}
}
}
我的服务:
@inject(ConnectionFactoryService)
export class ContactService{
private _connService : ConnectionService;
constructor(private connServFact : ConnectionFactoryService) {
this._connService = connServFact.getService();
}
public async addContact(contact : Contact) {
return await this._connService.postWebAPIAsync('contact',contact);
}
我的类接收未定义的服务
@inject(ContactService)
export class ContactPageProvider implements ICommonPageProvider {
/**
* Provider pour les contacts
*/
constructor( private _contactService : ContactService) {
console.log(_contactService);
}
getCreationRoute() : string {
return 'create-contact';
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。