先上结论:微信更新了wx.chooseImage(Object object)接口,需要把对应的接口改为wx.chooseMedia,并把对应的参数进行修改。
其中,
可以从(1)看到此接口已不再维护,打上了划线。从(2)的箭头指向的是问题所在。
因为,
这个接口的tempFilePaths[0]返回的并不是一个string类型的值。因此,虽然编译器不报错,而且程序能正常使用,但是无法进行调用api进行人脸检测。
错误如下,
所以解决方案如下:
//home.js
ChoosePhoto(){
wx.chooseMedia({
count:1,
sizeType:['original'],
sourceType:['album'],
success:(res)=>{
//console.log(res)
if(res.tempFiles.length>0){
this.setData({
src:res.tempFiles[0].tempFilePath,//此处更改
isShowPic:true
},()=>{
//成功的回调函数
this.getFaceInfo()
})
}
},
fail:()=>{
console.log('选择照片失败!')
}
})
},
同时做这个更改
结论
使用最新的wx.chooseMedia接口就可以了