基于其他问题,<ion-item *ngFor = "let item of test"class="col1" col-12 style=" border: none; color:black;text-align: center;">
{{item.description}}
</ion-item>
图片let item = 0;
for(let i = 0; i < this.test['0']['data'].sidelined['data'].length; i++){
let item = this.test['0']['data'].sidelined['data'][i];
this.item = item;
console.log(this.item.description);
}
大约是实际String的 +37%。
因此请考虑这种情况。
API 客户响应,其中based64
为Data
,
该对象包含许多属性..etc,但重要的是我发现的Array
中的Object
返回了Key
和{{1 }}由ImageString64
。
所需的解决方案:
我希望以最快的速度但对内存友好的方式来
maxWidth
这些图像
注意事项:
我确实知道如何
maxHeight
他们,问题是在哪里以及为什么这样做 甚至重要吗?
我拥有的选项:300x300
1- decode
响应encode
内
2-将那些//You can add yours if you have better one
与他们的Request
传递为普通callback
,然后在Objects
内对其进行解码。
有关响应的更多常规信息:
1-作为响应的对象的最大数组限制在6-9之间。
2-每个响应对象都有17个ImageString64
。
答案 0 :(得分:0)
如果您需要使用base64解码图像,则不会在请求回调或视图控制器中对其进行转换。
您应该具有一种内部存储库,您的视图控制器可以从中获取Object
实例。该存储库包含原始数据以及base64字符串。
如果从存储库访问对象实例之一,则应将base64字符串转换为UIImage
实例。视图控制器应该只看到UIImage
。
要获得良好的转换和显示数据性能,应在尝试显示之前进行转换,但如上所述,只有在需要时才进行转换。
如果要以UITableView
或UICollectionView
显示数据,则应使用预取协议UICollectionViewDataSourcePrefetching
(https://developer.apple.com/documentation/uikit/uicollectionviewdatasourceprefetching/prefetching_collection_view_data)或UITableViewDataSourcePrefetching
({{ 3}})。
显示图片的用例是什么?