在Vuetify中,我有一个v-img
,如果主映像失败,我想将映像更改为备用映像。
<v-img :src="cPicture" contain v-on:error="onImgError"></v-img>
cPicture : function() {
return this.failed_image ? "https://assets.dryicons.com/uploads/icon/svg/9872/ab3c0a16-6f14-4817-a30b-443273de911d.svg" : "http://myimg.jpg/";
},
onImgError : function(event) {
alert(1);
this.failed_image = true;
//this.$forceUpdate();
},
警报1发生。Vuetify
也会在控制台中抛出错误。但回退映像不显示。
我该怎么解决这个问题?
上面的主图像故意有一个坏的链接,但如果我使用一个好的链接,它会显示。
5条答案
按热度按时间9lowa7mx1#
您可以使用
cPicture
作为计算属性,onImgError
作为方法:检查此pen
编辑
我为所需的图像提供了一个无效的图像链接,在这种情况下,我们将在控制台中显示一个异常:
“[Vuetify]图像加载失败
在本例中,我们将加载另一个具有有效链接图像
x8goxv8g2#
我做同样的事情,但代码更少。
zbsbpyhn3#
这个问题已经在github上提出,应该在Vuetify 3中添加
这是我解决这个问题的方法
我首先创建两个数据
fallbackAvatar
是我希望在加载失败时显示的图像文件然后我创建一个计算来保存要显示的化身
最后在我的
template
标签中我已经在VueJS中使用和不使用typescript进行了尝试和测试
yruzcnhs4#
我喜欢@maurilio-atila所做的。在我的例子中,图像来自另一个服务器,我最终这样做:
虽然它不处理
v-on:error
,但它避免了它。u3r8eeie5#
此功能已添加到Vuetify 3。您需要使用v-img错误插槽。在下面的示例中,提供的第一个源图像中有一些拼写错误,因此将使用包含在错误槽中的第二个源。