撕开奶罩疯狂揉吮奶头_天堂69堂在线精品视频软件_亚洲中文av一区二区三区_成人无码A片一区二区三区免费看_日韩欧美亚_天天干天天操

18842388900

網站建設 APP開發 小程序

Article/文章

記錄成長點滴 分享您我感悟

您當前位置>首頁 > 知識 > 軟件開發

微信小程序中保存網絡圖片的方法介紹(代碼示例)

發表時間:2019-05-20 08:49:54

文章來源:沈陽網站建設

標簽:微信開發 微信小程序 小程序

分享:

瀏覽次數:0

本篇文章給大家帶來的內容是關于微信小程序中保存網絡圖片的方法介紹(代碼示例),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

該功能需要添加appid才能進行正常的測試。

小程序的文檔中我們得知,wx.saveImageToPhotosAlbum 是用來保存圖片到相冊的。

但是仔細一看會發現這個接口的filePath參數只接受臨時文件路徑或永久文件路徑,不支持網絡圖片路徑,意味著我們不能直接調用這個接口。。

因此先需要把該文件下載至本地,使用 wx.downloadFile 。

但值得注意的是小程序只可以跟指定的域名與進行網絡通信,也就是說下載圖片之前,我們需要先去微信公眾者平臺的開發設置里設置uploadFile合法域名。

示例代碼如下:

<!-- index.wxml --><image class="qr-code" src="{{url}}" mode="aspectFill" /><button class="text" bindtap="saveImage">保存圖片</button>
// index.jsconst app = getApp()Page({  data: {    url: 'https://avatars3.githubusercontent.com/u/23024075?s=460&v=4'  },  // 保存圖片  saveImage() {    this.wxToPromise('downloadFile', {        url: this.data.url      })      .then(res => this.wxToPromise('saveImageToPhotosAlbum', {        filePath: res.tempFilePath      }))      .then(res => {        // do something        wx.showToast({ title: '保存成功~',icon: 'none' });      })      .catch(err) => {        console.log(err);        // 如果是用戶自己取消的話保存圖片的話        // if (~err.errMsg.indexOf('cancel')) return;      })  },  /**   * 將 callback 轉為易讀的 promise   * @returns [promise]   */  wxToPromise(method, opt) {    return new Promise((resolve, reject) => {      wx[method]({        ...opt,        success(res) {          opt.success && opt.success();          resolve(res)        },        fail(err) {          opt.fail && opt.fail();          reject(err)        }      })    });  },})

然后理論上就可以保存圖片了... 用戶第一次在我們的小程序使用保存圖片這個功能是會彈出一個授權彈框,如果用戶手滑點了拒絕授權后再點一次保存圖片,然后就會發現什么反應都沒有了。。。

出現這樣的原因是因為這個授權彈框只會出現一次,所以我們得想辦法再讓用戶重新授權一次。這時就想到使用 wx.authorize .

但是經過測試后發現,使用 wx.authorize 后,會報 authorize:fail auth deny 的錯誤。然后經過查閱資料得知:

如果用戶未接受或拒絕過此權限,會彈窗詢問用戶,用戶點擊同意后方可調用接口;

如果用戶已授權,可以直接調用接口;

如果用戶已拒絕授權,則不會出現彈窗,而是直接進入接口 fail 回調。請開發者兼容用戶拒絕授權的場景。

emmm... 那這樣效果當然不符合我們預期,只能在換一種方式。這時就想到了使用<button open-type="openSetting"/>,在交互上做一個提示彈框,引導用戶重新授權:

<image class="qr-code" src="{{url}}" mode="aspectFill" /><button class="text" bindtap="saveImage">保存圖片</button><!-- 簡陋版提示 --><view wx:if="{{showDialog}}" class="dialog-wrap">  <view class="dialog">    這是一段提示用戶授權的提示語    <view class="dialog-footer">      <button        class="btn"        open-type="openSetting"        bindtap="confirm" >         授權      </button>      <button class="btn" bindtap="cancel">取消</button>    </view>  </view></view>
const app = getApp()Page({  data: {    url: 'https://avatars3.githubusercontent.com/u/23024075?s=460&v=4',    showDialog: false,  },  saveImage() {    this.wxToPromise('downloadFile', {        url: this.data.url      })      .then(res => this.wxToPromise('saveImageToPhotosAlbum', {        filePath: res.tempFilePath      }))      .then(res => {        console.log(res);        // this.hide();        wx.showToast({          title: '保存成功~',          icon: '沈陽小程序制作

<a href=http://www.jiozzl.cn target=_blank class=infotextkey>沈陽<a href=http://www.jiozzl.cn target=_blank class=infotextkey>軟件開發</a></a>,<a href=http://www.jiozzl.cn target=_blank class=infotextkey>沈陽<a href=http://www.jiozzl.cn target=_blank class=infotextkey>軟件公司</a></a>

none', }); }) .catch(({ errMsg }) => { console.log(errMsg) // if (~errMsg.indexOf('cancel')) return; if (!~errMsg.indexOf('auth')) { wx.showToast({ title: '圖片保存失敗,稍后再試', icon: 'none' }); } else { // 調用授權提示彈框 this.setData({ showDialog: true }) }; }) }, // callback to promise wxToPromise(method, opt) { return new Promise((resolve, reject) => { wx[method]({ ...opt, success(res) { opt.success && opt.success(); resolve(res) }, fail(err) { opt.fail && opt.fail(); reject(err) } }) }); }, confirm() { this.setData({ showDialog:false }) }, cancel() { this.setData({ showDialog: false }) }})

微信開發,微信小程序,小程序

相關案例查看更多

主站蜘蛛池模板: 一个人看的www免费观看视频 | av一区二区三区免费观看 | 国产日产高清欧美一区 | 日本成熟视频免费视频 | 午夜热门精品一区二区三区 | 久久国产高清 | 国产专区在线看 | 久久精品出轨人妻国产 | videosxoo欧美老师 | 国内精品视频在线观看九九 | 老子影院午夜伦不卡 | 国产精品一区二区在线蜜芽TV | 国产高清精品无码二区 | 亚洲综合成人一区 | 极品少妇被猛得白浆直流草莓视频 | 亚洲精品人成网线在线播放VA | 成熟老妇女毛茸茸的做性 | 狠狠色丁香五月综合缴情婷婷五月 | 黄网站色视频免费观看 | 日本人牲交bbbxxxx | 欧美偷窥清纯综合图区 | www.aa456.com亚洲 中国老太婆野外xxxx | 又爽又高潮日本少妇A片 | 中文字幕人妻熟女人妻A片 91婷婷韩国欧美一区二区 | 国产激情免费视频 | 国产福利美女福利视频免费看 | 中国老熟女重囗味HDXX | 国产精品久线在线观看 | 中文字幕大香视频蕉免费 | 特级做A爰片毛片免费69 | 99re亚洲无码高清 | 91视频播放器 | 久久婷婷色一区二区三区 | 欧美在线网址 | 天天躁日日躁狠狠躁性色avq | 韩国精品视频一区二区在线播放 | 免费精品国偷自产在线在线 | 亚洲香蕉视频天天爽 | 亚洲VA欧美VA天堂V国产综合 | 狠狠人妻久久久久久综合蜜桃 | 性一交一乱一伦一色一情 |