Javascript 使用带角度模态库的异步管道
我试图使用Javascript 使用带角度模态库的异步管道,javascript,angular,Javascript,Angular,我试图使用angular modal gallery插件将服务返回的URL中的大量图像显示为json 如果我按照演示进行硬编码,模态库工作正常。然而,当我尝试挂接我的服务时,它停止工作 在我的component.html中,我有 <ks-modal-gallery [id]="1" [modalImages]="myModalImages | async"></ks-modal-gallery> 其中getModalImages()为 getModalImage
angular modal gallery
插件将服务返回的URL中的大量图像显示为json
如果我按照演示进行硬编码,模态库工作正常。然而,当我尝试挂接我的服务时,它停止工作
在我的component.html中,我有
<ks-modal-gallery [id]="1" [modalImages]="myModalImages | async"></ks-modal-gallery>
其中getModalImages()
为
getModalImages(): Observable<Image[]> {
return this.http.get(environment.apiUrl + "/image/portfolio/modal/", this.buildRequestOptions())
.map(res => res.json())
.catch(this.handleError);
}
这表明它在获取图像之前尝试初始化
谁能告诉我我做错了什么
最后,我尝试删除async
管道并如下初始化数组
myModalImages: Image[] = [];
myModalImagesSubscription: Subscription;
constructor(private galleryService: GalleryService, private imageService: ImageService) {
this.myModalImagesSubscription = this.imageService.getModalImages().subscribe((result: Image[]) => {
this.myModalImages = result;
});
}
在html中包含以下内容:
<ks-modal-gallery [id]="1" [modalImages]="myModalImages"></ks-modal-gallery>
然后我得到以下错误
错误类型错误:无法读取未定义的属性“get”
在CatchSubscriber.BaseService.handleError[作为选择器]
不要订阅该服务<代码>异步管道将为您完成这一任务。将返回的可观察对象分配给
myModalImages
属性
constructor(private galleryService: GalleryService, private imageService: ImageService) {
this.myModalImages= this.imageService.getModalImages() ;
}
很抱歉,我也尝试了这个,但它不起作用(相同的错误)我会再次更新问题,只需使用
[modalImages]=“myModalImages”
谢谢,我已经用结果更新了我的问题(我初始化了数组,删除了该错误),但它带来了一个新问题?很抱歉,我因为输入错误而收到了这个问题,我将用结果更新问题,但不足的是初始化数组,即Image[]=[]代码>回调'this.myModalImages=result;`似乎没有覆盖数组,因为它会像一个单独的问题一样清空,所以我提出了一个单独的问题,谢谢Sachila。
<ks-modal-gallery [id]="1" [modalImages]="myModalImages"></ks-modal-gallery>
constructor(private galleryService: GalleryService, private imageService: ImageService) {
this.myModalImages= this.imageService.getModalImages() ;
}