关于图片的处理

来源:9-8 为Promise插上翅膀之可取消的异步任务

慕粉2133509872

2018-07-07

老师,我在进行商品列表的编写时,发现react-native 特别耗内存,除了对列表改用flatList之外是否还有其他比较好的方案处理下图片

写回答

1回答

CrazyCodeBoy

2018-07-09

  1. 列表建议采用分页加载,避免一次性加载所有数据;

  2. 建议对加载的图片做压缩处理,根据需要加载指定分辨率的图片,这点可以借助CDN实现,一般图片CDN都带有图片压缩的功能,比如:有一个20000px*1000px的图片要显示在的200px*100px的image组件上,这是可以请求CDN返回一个200px*100px的图片,而不是返回原图;

  3. react-native的图片库用的是fresco,fresco对加载大图支持的不是很好,虽然fresco可对图片进行压缩,但是对png以及webp是不起作用的,另外,fresco对大的gif支持也不是很好(过大会oom),使用时要多加注意;

  4. 另外,可以在onChangeVisibleRows()方法来只加载可见列表项图片以节省内存;


0
1
慕粉2133509872
非常感谢!
2018-07-15
共1条回复

React Native技术精讲与高质量上线App开发

一个真实的上线项目,一次完整的开发过程,全面掌握React Native技术

1577 学习 · 727 问题

查看课程