【发布时间】:2018-10-27 23:27:19
【问题描述】:
服务将从服务器调用并获取 blob 的信息。我需要打印组件中每个 blob 的详细信息。
角度服务部分工作正常并获取数据。定义component.ts和html的正确方法是什么?
浏览器出错
Component.html
<div class="col-md-4" *ngFor="let key of blobsList | keys">
<p>
<a target="_blank" href="{{blobsList[key].blobName}}">
<img src="{{blobsList[key].blobName}}" width="100px" height="100px" />
</a>
</p>
<p><a class="btn btn-default" href="#">{{blobsList[key].blobName}}</a></p>
pipe.ts
@Pipe({
name: 'keys'
})
export class KeysPipe implements PipeTransform {
transform(value: any, args?: any): any {
return Object.keys(value);
}
}
Component.ts
this.blobService.getAllBlobsJS() {
.subscribe(
(val) => {
console.log("..val =", val);
},
response => {
console.log(" in error", response);
},
() => {
console.log(" observable is now completed.");
});
console.log("..values=", this.bList);
}
服务
getAllBlobsJS(): Observable<Azureblob[]> {
return new Observable(obs=>{
var localArr: Azureblob[] = [];
this.blobServiceObj = AzureStorageBlobServiceJS.createBlobService(this.connectionString);
this.blobList = this.blobServiceObj.listBlobsSegmented('acs', null,
function (error, results) {
if (error) {
console.log("**** Error");
obs.error();
} else {
for (var i = 0, blob; blob = results.entries[i]; i++) {
console.log("Blob ", i, blob);
localArr.push(new Azureblob(blob.name));
}
}
console.log("localArr - # of blobs returned=", localArr.length);
return localArr;
});
obs.next(this.blobList);
obs.complete();
})}
【问题讨论】:
-
显示您分配
blobsList的部分