【发布时间】:2018-05-13 09:13:22
【问题描述】:
我在服务文件中有这个服务,它是一个 http 调用。
export class BackendServices {
addons: IAddons[];
constructor(private http: HttpClient) {
this.getWorkOrders();
}
getAddons() {
this.http.get<IAddons>(this.BASE_URL + '/addons/')
.subscribe((data: any) => {
this.addons = data;
});
}
组件部分 然后从我的主要组件中,我有一个调用模态对话框的按钮。下面是主要组件的代码:
export class OrdersComponent {
openAddonsDialog() {
let dialogRef = this.pickAddonsDialog.open(PickaddonsComponent);
}
}
然后我从对话框的构造函数调用服务上的 getAddons 方法。 我只是想知道我们如何仅在插件属性从 http 调用接收到数据时才打开模式对话框。
export class PickaddonsComponent implements OnInit {
constructor(public bs: BackendServices) {
this.bs.getAddons();
}
但它说 this.service.getAddons() 是未定义的。在 stackoverflow 上阅读了很多关于此的内容,从不同的帖子中尝试了很多步骤,但到目前为止都没有帮助我。
【问题讨论】:
-
你能分享错误截图吗
-
@ShashankVivek ,你好我已经添加了截图
-
您的错误是针对
addons: IAddons[]而不是getAddons()。如果你的图片是正确的,你能检查一下addons是否不是private -
不,只是插件:IAddons[];
-
getAddons()呢?错误是针对addons而不是getAddons()。你能分享你的代码吗?您的屏幕截图与您的问题相矛盾
标签: angular observable rxjs5