安卓端nvue环境下uni-app的image组件初次加载时会有闪白的问题
安卓端nvue环境下uni-app的image组件初次加载时会有闪白的问题
示例代码:
<image src="@static/img/minaliao.png" style="width: 750rpx; height: 1000rpx" />
操作步骤:
<image src="@static/img/minaliao.png" style="width: 750rpx; height: 1000rpx" />
预期结果:
希望image加载不要出现闪白。
实际结果:
进入包含image组件的新页面,image组件加载过程中,会有一瞬间的空白闪烁,观感十分差
bug描述:
进入包含image组件的新页面,image组件加载过程中,会有一瞬间的空白闪烁,观感十分差,是否有解决办法?
注1:我引用的是本地图片,大小不到10KB,理论上应该不存在加载过慢的可能性。 注2:这种情况只在安卓机出现,苹果机器下进入页面的时候,image就是加载好的。
| 信息 | 描述 |
|---|---|
| 产品分类 | uniapp/App |
| PC开发环境 | Windows |
| PC版本号 | 11 |
| HBuilderX类型 | 正式 |
| HBuilderX版本 | 4.65 |
| 手机系统 | Android |
| 手机版本号 | Android 10 |
| 手机厂商 | 华为 |
| 手机机型 | 华为Mate 30 |
| 页面类型 | nvue |
| vue版本 | vue3 |
| 打包方式 | 云端 |
| 项目创建方式 | HBuilderX |
更多关于安卓端nvue环境下uni-app的image组件初次加载时会有闪白的问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于安卓端nvue环境下uni-app的image组件初次加载时会有闪白的问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在安卓端 nvue 环境下,image 组件初次加载出现闪白是已知的渲染机制问题。这是由于安卓系统在图片解码和渲染完成前会先显示空白区域,尤其在页面切换时更明显。以下是几种有效的解决方案:
-
使用
background-image替代
在 nvue 中,<image>组件由原生渲染,而<view>的background-image属性在部分场景下加载更稳定。将代码改为:<view style="width:750rpx; height:1000rpx; background-image:url('@static/img/minaliao.png');"></view> -
预加载关键图片
在页面onLoad或应用启动时提前加载图片:const img = new Image(); img.src = '/static/img/minaliao.png'; -
为图片容器设置背景色
在图片加载期间设置与图片主色相近的背景色,减少视觉反差:<image src="@static/img/minaliao.png" style="width:750rpx; height:1000rpx; background-color:#F5F5F5;" /> -
启用图片缓存
通过uni.preloadImage预载图片到内存缓存:uni.preloadImage({ src: '/static/img/minaliao.png' });

