위 챗 애플 릿 그림 을 로 컬 에 저장 합 니 다.

5439 단어
위 챗 애플 릿 그림 을 로 컬 에 저장 하 는 것 은 일반적인 기능 입 니 다.
여기 서 완전한 실현 방향 을 설명 한다.
위 챗 공식 권한 수 여 는 한 번 만 연주 하기 때문에 사용자 가 거부 한 후에 다시 호출 하려 면 button 구성 요소 의 위 챗 개방 능력 과 결합 하여 조정 해 야 합 니 다. 다음 방안 은 위 챗 의 각종 권한 수여 에서 참고 할 수 있 습 니 다.
wxml 부분: 그림 저장 단추 (A), button 구성 요소 (B) 는 인증 을 촉발 합 니 다. B 투명 도 는 0 입 니 다. A 에 덮 고 하나의 변수 로 페이지 에 존재 하 는 지 여 부 를 제어 합 니 다.
  


js 중:
data:{
  openSettingBtnHidden: true,//    
  imgUrl: '    '
},

//     
  saveImg:function(e){
    let that = this;

    //      
    wx.getSetting({
      success(res) {
        if (!res.authSetting['scope.writePhotosAlbum']) {
          wx.authorize({
            scope: 'scope.writePhotosAlbum',
            success() {
              //             
              that.saveImgToLocal();
            },
            fail() {//             
              that.setData({
                openSettingBtnHidden: false
              })
            }
          })
        } else {//        
          that.saveImgToLocal();
        }
      }
    })

  },
  saveImgToLocal: function (e) {
    let that = this;
 
    let imgSrc = that.data.imgUrl;
    wx.downloadFile({
      url: imgSrc,
      success: function (res) {
        console.log(res);
        //       
        wx.saveImageToPhotosAlbum({
          filePath: res.tempFilePath,
          success: function (data) {
            wx.showToast({
              title: '    ',
              icon: 'success',
              duration: 2000
            })
          },
        })
      }
    })

  },

  //   
  handleSetting: function (e) {
    let that = this;
    //           ,      ,           ,     “   ”  ;             

    if (!e.detail.authSetting['scope.writePhotosAlbum']) {
      // wx.showModal({
      //   title: '  ',
      //   content: '      ,            !',
      //   showCancel: false
      // })
      that.setData({
        openSettingBtnHidden: false
      })
    } else {
      // wx.showModal({
      //   title: '  ',
      //   content: '    ,            !',
      //   showCancel: false
      // })
      that.setData({
        openSettingBtnHidden: true
      })
    }
  },

 
다음으로 전송:https://www.cnblogs.com/nanyang520/p/11103094.html

좋은 웹페이지 즐겨찾기