Vant: [Bug Report] ImagePreview 图片预览 黑屏(只显示遮罩层)

Created on 2 Mar 2020  ·  13Comments  ·  Source: youzan/vant

设备 / 浏览器

pc (google) app( ios android )

Vant 版本

2.4.1

Vue 版本

2.5.16

重现代码

image_preview() {
if( this.setInfo && this.setInfo.photo && this.setInfo.photo['360']){ // 这边是对象传递 偶然会黑屏?
ImagePreview({
images: [
this.setInfo.photo['360']
],
showIndex: false,
});
}
}
微信图片_20200302195828

描述问题

pc (google) app( ios android ),几乎在所有的机子上,图片预览,有时候会出现黑屏,也就是只出现遮罩层,没有图片。查看了下元素,img是在的,但是宽度是0,所以显示不出来。

help wanted

Most helpful comment

我也遇到同样的问题~ 但是我PC端正常,iOS手机打开就会偶现

All 13 comments

请确保传递了正确的图片 URL,重现链接无法运行

请确保传递了正确的图片 URL,重现链接无法运行

你好,图片是正确的url,查看元素,图片是在的,但是width是0,所以图片显示不出来。以下是我在项目中的代码
image_preview() {
if( this.setInfo && this.setInfo.photo && this.setInfo.photo['360']){ // 这边是对象传递 偶然会黑屏?
ImagePreview({
images: [
this.setInfo.photo['360']
],
showIndex: false,
});
}
}

width 是 0 说明图片没有正常加载,你的图片 URL 是啥?

width 是 0 说明图片没有正常加载,你的图片 URL 是啥?

图片是http或者https的图片,同一张图片有时候能显示出来,有时候就突然变成了width:0;

这个大概率还是图片加载的问题,你可以抓包看下

确实玄学,me too

怎么就关闭了? 读取本地图片时也会出现这样的问题,图片格式Base64; 有时候只显示黑色弹层

一样的问题,是移动端弹出输入法的时候,会自动把van-swipe__track和van-swipe__item的宽度都给置成0,再加载图片(即使是本地)也不出来,确实需要修复啊

害,vant升级到2.5.5一切无事发生了

能复现的同学可以提供下 codesandbox 链接

我也遇到同样的问题~ 但是我PC端正常,iOS手机打开就会偶现

原因是样式问题,width属性设置成了0,更新版本到2.9.3

升级到 2.10.12 又出现了

Was this page helpful?
0 / 5 - 0 ratings