最近在渲染图片时遇到了一个问题,页面上只需要使用一张图片作为封面,而后台返回的是字符串形式的图片组,于是准备用filters去筛选一下,提取图片组的第一张图
filters:{
filtertu:function(res){
communityimg=res.split(",")[0]
console.log(communityimg);
return communityimg;
}
},
结果程序就报错了
TypeError: Cannot read property 'split' of undefined at vue.js : 6
当时就很困惑,split()怎么会报错呢,尝试了几种方法都无果后,我看到有人说可能是它在某个状态下值为undefined,于是我测试了一下值为undefined时的结果
var str=undefined
console.log(str.split(","))
然后程序报错
"Uncaught TypeError: Cannot read property 'split' of undefined"
于是我将源程序改成了
filters:{
filtertu:function(res){
communityimg=(res||'').split(",")[0]
console.log(communityimg);
return communityimg;
}
},
果然不报错了~~