//也是參考了一大堆網(wǎng)上的資料矫付,做出來的凯沪,親測好用!B蛴拧7谅怼!杀赢!
//下載圖片
? goDownImg=(e)=>{//下載圖片
? ? e.stopPropagation();
? ? this.closeOpenSet();
? ? let {currImg,prevList}=this.state;
? ? //let imgPath1=prevList[currImg].img_url;
? ? let imgPath1 ='https://aaa.tech.cn/1.jpg';
? ? let that =this;
? ? Taro.getSetting({
success (res) {
if (!res.authSetting['scope.writePhotosAlbum']) {//沒有授權
? ? ? ? ? Taro.authorize({
scope:'scope.writePhotosAlbum',
? ? ? ? ? ? success () {
that.downloadImgToAlbum(imgPath1);
? ? ? ? ? ? },
? ? ? ? ? ? fail(){
that.setState({//顯示授權層
? ? ? ? ? ? ? ? openSetting:true
? ? ? ? ? ? ? })
}
})
}else {//已授權
? ? ? ? ? that.downloadImgToAlbum(imgPath1);
? ? ? ? }
}
})
}
downloadImgToAlbum (imgPath1) {
Taro.showToast({
title:'正在保存烘跺,請稍等',
? ? ? icon:'none',
? ? ? duration:2000
? ? })
//下載圖片
? ? this.downloadHttpImg(imgPath1)
.then((res)=>{
this.sharePosteCanvas(res)
})
//生成海報
//this.drawBall(imgPath1);
? }
downloadHttpImg =(httpImg) =>{
return new Promise(((resolve, reject) => {
Taro.downloadFile({
url: httpImg,
? ? ? ? success: (res) => {
if (res.statusCode ===200) {
resolve(res.tempFilePath)
}else {
Taro.showToast({
title:'圖片下載失敗脂崔!',
? ? ? ? ? ? ? icon:'none',
? ? ? ? ? ? ? duration:1000
? ? ? ? ? ? })
}
},
? ? ? ? fail: (res) => {
Taro.showToast({
title:'提示圖片下載失斅舜尽!',
? ? ? ? ? ? icon:'none',
? ? ? ? ? ? duration:1000
? ? ? ? ? })
}
})
}))
}
sharePosteCanvas =(imgUrl)=> {
Taro.saveImageToPhotosAlbum({
filePath: imgUrl,
? ? ? success (res) {
Taro.showToast({
title:'圖片已保存到相冊',
? ? ? ? ? icon:'none',
? ? ? ? ? duration:1000
? ? ? ? })
},
? ? ? fail (err) {
Taro.showToast({
title:'圖片保存失敗',
? ? ? ? ? icon:'none',
? ? ? ? ? duration:1000
? ? ? ? })
}
})
}