当前位置:   article > 正文

微信小程序在设置图片长按保存过程中踩过的坑及解决方法_微信小程序实现长按图片报错

微信小程序实现长按图片报错

一、API特点

        1、wx.saveImageToPhotosAlbum,保存图片到系统相册

             特点:当用户拒绝后,下次保存时,会直接执行fail中的代码,不会重新调起授权窗口。 

        2、   wx.getSettingwx.openSetting

             (1)wx.getSetting 获取用户的当前设置。返回值中只会出现小程序已经向用户请求过的权限

             (2)wx.openSetting 调起客户端小程序设置界面,返回用户设置的操作结果。设置界面只会出现小程序已经向用户请求过的权限

             特点:必须有事件才会触发,例如open-type、bind tap、bindlongpress等。

        3、wx.authorize ,  提前向用户发起授权请求。调用后会立刻弹窗询问用户是否同意授权小程序使用某项功能或获取用户的某些数据,但不会实际调用对应接口

              特点:授权拒绝后,短时间内不会再调起,会直接执行fail中的代码。

二、解决方法

  1. <image src="" data-src="" bindlongpress="saveImage"></image>
  2. saveImage(e) {
  3. let that = this;
  4. wx.getSetting({
  5. success(settingdata) {
  6. if(settingdata.authSetting.hasOwnProperty('scope.writePhotosAlbum') &&
  7. settingdata.authSetting['scope.writePhotosAlbum'] === false) {
  8. that.getAuthorize();
  9. } else {
  10. that.saveImageData();
  11. }
  12. },
  13. fail:function(data) {
  14. }
  15. })
  16. },
  17. getAuthorize(){
  18. let that = this;
  19. wx.authorize({
  20. scope: "scope.writePhotosAlbum",
  21. success(res) {
  22. console.log(res,'成功');
  23. },
  24. fail(res) {
  25. that.openSettingMethod();
  26. }
  27. })
  28. },
  29. openSettingMethod(){
  30. wx.showModal({
  31. title: '提示',
  32. content: '是否打开设置页面',
  33. success (res) {
  34. if (res.confirm) {
  35. wx.openSetting({
  36. success: function(res){}
  37. })
  38. } else if(res.cancel){
  39. wx.showToast({
  40. title: '已取消',
  41. icon: 'none',
  42. duration: 1000
  43. })
  44. }
  45. }
  46. })
  47. },
  48. saveImageData() {
  49. let url = '';
  50. wx.saveImageToPhotosAlbum({
  51. filePath:url,
  52. success: function(res) {
  53. wx.showToast({
  54. title: '已保存至相册,扫码关注',
  55. icon: 'none',
  56. duration: 1000
  57. })
  58. },
  59. fail: function(res) {
  60. wx.showToast({
  61. title: '保存失败',
  62. icon: 'none',
  63. duration: 1000
  64. })
  65. }
  66. })
  67. }

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号