微信小程序保存圖片到相冊(cè)權(quán)限設(shè)置
微信小程序保存圖片到相冊(cè)可以分成兩種:一種是保存網(wǎng)絡(luò)圖片,一種是保存本地圖片
保存網(wǎng)絡(luò)圖片:
var url = '網(wǎng)絡(luò)圖片路徑';
wx.downloadFile({
url: url,
success: function (res) {
var benUrl = res.tempFilePath;
//圖片保存到本地相冊(cè)
wx.saveImageToPhotosAlbum({
filePath: benUrl,
//授權(quán)成功,保存圖片
success: function (data) {
wx.showToast({
title: '保存成功',
icon: 'success',
duration: 2000
})
},
//授權(quán)失敗
fail: function (err) {
if (err.errMsg) {//重新授權(quán)彈框確認(rèn)
wx.showModal({
title: '提示',
content: '您好,請(qǐng)先授權(quán),在保存此圖片。',
showCancel: false,
success(res) {
if (res.confirm) {//重新授權(quán)彈框用戶點(diǎn)擊了確定
wx.openSetting({//進(jìn)入小程序授權(quán)設(shè)置頁(yè)面
success(settingdata) {
console.log(settingdata)
if (settingdata.authSetting['scope.writePhotosAlbum']) {//用戶打開了保存圖片授權(quán)開關(guān)
wx.saveImageToPhotosAlbum({
filePath: benUrl,
success: function (data) {
wx.showToast({
title: '保存成功',
icon: 'success',
duration: 2000
})
},
})
} else {//用戶未打開保存圖片到相冊(cè)的授權(quán)開關(guān)
wx.showModal({
title: '溫馨提示',
content: '授權(quán)失敗,請(qǐng)稍后重新獲取',
showCancel: false,
})
}
}
})
}
}
})
}
}
})
}
})
保存本地圖片:
wx.chooseImage({
count: 1,// 默認(rèn)9
sizeType: ['original', 'compressed'],// 可以指定是原圖還是壓縮圖,默認(rèn)二者都有
sourceType: ['album', 'camera'],// 可以指定來(lái)源是相冊(cè)還是相機(jī),默認(rèn)二者都有
success: function (res) {
// 返回選定照片的本地文件路徑列表,tempFilePath可以作為img標(biāo)簽的src屬性顯示圖片
console.log("choose image")
console.log(res)
var tempFilePath = res.tempFilePaths[0]
wx.getImageInfo({
src: tempFilePath,
success: function (res) {
console.log("get image info")
console.log(res)
wx.saveImageToPhotosAlbum({
filePath: res.path,
success(res) {
console.log("保存圖片成功")
console.log(res)
wx.showToast({
title: '保存成功',
icon: 'success',
duration: 2000
})
},
fail(err) {
console.log('失敗')
console.log(err)
if (err.errMsg == "saveImageToPhotosAlbum:fail cancel") {
wx.openSetting({
success(settingdata) {
console.log(settingdata)
if (settingdata.authSetting["scope.writePhotosAlbum"]) {
console.log('獲取權(quán)限成功,給出再次點(diǎn)擊圖片保存到相冊(cè)的提示。')
} else {
console.log('獲取權(quán)限失敗,給出不給權(quán)限就無(wú)法正常使用的提示')
}
}
})
}
}
})
}
})
}
})
為大家推薦現(xiàn)在關(guān)注度比較高的微信小程序教程一篇:《微信小程序開發(fā)教程》小編為大家精心整理的,希望喜歡。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript中的"=、==、==="區(qū)別講解
今天小編就為大家分享一篇關(guān)于JavaScript中的"=、==、==="區(qū)別講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-01-01
JavaScript中日常收集常見的10種錯(cuò)誤(推薦)
本文是小編給大家日常收集整理的js中常見的10種錯(cuò)誤,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下2017-01-01
JS實(shí)現(xiàn)點(diǎn)擊button按鈕切換圖片
這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)點(diǎn)擊button按鈕切換圖片,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07
js實(shí)現(xiàn)圓形顯示鼠標(biāo)單擊位置
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)圓形顯示鼠標(biāo)單擊位置,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02
通過 JS 判斷頁(yè)面是否有滾動(dòng)條的實(shí)現(xiàn)方法
最近在寫插件的過程中,需要使用 JS 判斷是否有滾動(dòng)條,搜了一下,大致方法都差不多,但都有些啰嗦,代碼不夠簡(jiǎn)潔。最終通過參考不同方法,寫了一個(gè)比較簡(jiǎn)單的方法2018-04-04
JavaScript實(shí)踐之使用Canvas開發(fā)一個(gè)可配置的大轉(zhuǎn)盤抽獎(jiǎng)功能
公司項(xiàng)目搞優(yōu)惠活動(dòng),讓做一個(gè)轉(zhuǎn)盤抽獎(jiǎng)的活動(dòng),這篇文章主要給大家介紹了關(guān)于JavaScript實(shí)踐之使用Canvas開發(fā)一個(gè)可配置的大轉(zhuǎn)盤抽獎(jiǎng)功能的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11
JavaScript設(shè)計(jì)模式之迭代者模式詳情
這篇文章主要介紹了JavaScript設(shè)計(jì)模式之迭代者模式詳情,迭代器設(shè)計(jì)模式能夠可以讓我們更方便的且有規(guī)矩的進(jìn)行訪問復(fù)合數(shù)據(jù)的每一項(xiàng),也可以通過迭代器進(jìn)行完成一些流線式操作2022-06-06
使用 JavaScript 在沒有插件的情況下輸入文本掩碼的示例詳解
這篇文章主要介紹了使用 JavaScript 在沒有插件的情況下輸入文本掩碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06

