国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

使用wepy 小程序授權點擊取消授權失敗的方案

baihe / 2845人閱讀

摘要:在里使用進行小程序頁面授權,里面包含了用戶點擊取消的重新授權方案警告您點擊了拒絕授權將無法正常顯示個人信息點擊確定重新獲取授權。

在wepy里使用進行小程序頁面授權,里面包含了用戶點擊取消的重新授權方案:

//auth.js
/*
* @Author: Porco_Mar
* @Date:   2018-04-11 15:49:55
* @Last Modified by:   Porco_Mar
* @Last Modified time: 2018-04-18 10:43:36
*/
import wepy from "wepy"

export const _timer = (context) => {
  return new Promise((resolve, reject) => {
    let _timer = null;
    clearInterval(_timer);
      _timer = setInterval(() =>{
        resolve(author(context))
      },500)
      context.data.timer = _timer; 
  })
}
export const author = (context) => {
  return new Promise((resolve,reject) => {
    var that = context;
    wepy.getUserInfo({
      success: (res) =>{
        var userInfo = res.userInfo;
        that.data.userInfo = userInfo;
        resolve(res.userInfo)
      },
      fail: (res) =>{
        console.log(".......getUserInfo fail.........")
        clearInterval(context.data.timer)
        wepy.showModal({
          title: "警告",
          content: "您點擊了拒絕授權,將無法正常顯示個人信息,點擊確定重新獲取授權。",
          success:function(res){
            if (res.confirm) {
                wepy.openSetting({
                  success: (res) => {
                    if (res.authSetting["scope.userInfo"] || res.authSetting["scope.userLocation"]){////如果用戶重新同意了授權登錄
                      wepy.getUserInfo({
                        success:function(res){
                          resolve(res.userInfo)
                          that.$parent.globalData.userInfo = res.userInfo;
                        }
                      })
                    }
                  },fail: function(res){
                    resolve({"avatarUrl":"","nickName":"翠花"})
                    console.log("沒有選擇授權")
                  }
                })               
            }else{
               console.log("還是不同意授權")
            }
          }
        })
      },
      complete: function (res){
      }
    })
  })
}

let isBoolen = true;
export const location = (context) => {
  return new Promise((resolve, reject) => {
    if(context.$parent.globalData.location != null){
      resolve(context.$parent.globalData.location)
      console.log("已獲取location")
    }else{
      console.log("沒有獲取到location ")
      wepy.getSetting({
          success(res) {
            console.log(res)
            if(!res.authSetting["scope.userLocation"]) {
                wx.showModal({
                    title: "溫馨提醒",
                    content: "需要獲取您的地理位置才能使用小程序",
                    cancelText: "不使用",
                    confirmText: "獲取位置",
                    success: function(res) {
                        if(res.confirm) {
                          getLocation(context).then((res) => {
                            // console.log(res)
                            if (res.code == 1){
                              if(isBoolen){ //第一次不執行
                                isBoolen = false;
                              }else{
                                wepy.openSetting({  //  點擊自帶取消定位健會調用這個面板
                                  success: (res) => {
                                    if (res.authSetting["scope.userLocation"]){////如果用戶在面板重新同意了授權地理位置
                                      console.log("--有了scope.userLocation--")
                                      resolve(getLocation(context)) //點擊面板后再次調用getLocation返回參數
                                    }
                                  },fail: function(res){
                                    console.log("--沒有scope.userLocation--")
                                  }
                                })
                              }
                            }else{
                              resolve(getLocation(context))
                            }
                          })
                        } else if(res.cancel) {
                             //resolve(getLocation(context))
                             //不做任何操作
                        }
                    }
                })
            }                    
          }
      })
    }
    
  })
}

export const getLocation = (context) => {
  return new Promise((resolve, reject) => {
     wx.getLocation({
        type: "wgs84",
        success: function(res) {
          var latitude = res.latitude
          var longitude = res.longitude
          var speed = res.speed
          var accuracy = res.accuracy
          context.$parent.globalData.location = {"code": 0, "latitude":latitude, "longitude":longitude, "speed":speed, "accuracy":accuracy}
          resolve(context.$parent.globalData.location)
        },
        fail: function(res){
          resolve({"code": 1, "latitude":"", "longitude":"", "speed":"", "accuracy":""})
        }
      })
  })
}






// index.wepy
import wepy from "wepy"
import {_timer, author, location} from "../utils/auth"

  onShow() {
      let globalDt = this.$parent.globalData
      if(globalDt.userInfo.nickName && globalDt.userInfo.avatarUrl){
        this.userInfo = globalDt.userInfo;
      }else{
          this.getValue(); // 獲取userInfo
      }

      if(globalDt.location === null){
          this.getLt(this); // 獲取地理位置
      }else{
          console.log("當前頁面獲取過location了")
          //console.log(globalDt.location)
          this.location = globalDt.location;
      }
  }
  async getValue () {
      const datam = await _timer(this)
    console.log(datam)
    this.userInfo = datam;
    this.$apply();
  }
  async getLt (context) {
      const local = await location(context)
      console.log(local)
      this.location = local;
      this.$apply()
  }

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/100441.html

相關文章

  • 程序 wepy 用戶取消授權以及取消獲取地理位置后處理方法

    摘要:在里使用進行小程序頁面授權,里面包含了用戶點擊取消的重新授權方案警告您點擊了拒絕授權將無法正常顯示個人信息點擊確定重新獲取授權。 在wepy里使用進行小程序頁面授權,里面包含了用戶點擊取消的重新授權方案: //auth.js /* * @Author: Porco_Mar * @Date: 2018-04-11 15:49:55 * @Last Modified by: Por...

    wqj97 評論0 收藏0
  • 記錄微信程序

    摘要:除官方外的參考文章微信小程序實例創建下發模板消息實例手把手教你開發微信小程序之模版消息開發教你突破小程序模板消息的推送限制獲取用戶信息接口的廢棄問題接口是獲取用戶信息昵稱,頭像等的接口,在官方文檔上寫是即將廢棄。 ----------------更新-------------- 2018年10月10日官網3個接口廢棄的通知: 1、分享監聽接口分享消息給好友時,開發者將無法從callba...

    EastWoodYang 評論0 收藏0
  • 做完程序項目、老板給我加了6k薪資~

    摘要:大家好,我是平頭哥聯盟的首席填坑官蘇南,今天要給大家分享的是最近公司做的一個小程序項目,過程中的一些好的總結和遇到的坑,希望能給其他攻城獅帶來些許便利,更希望能做完之后老板給你加薪今天是中秋節的第一天,假日的清晨莫名的醒的特別早,不知道為什 showImg(https://segmentfault.com/img/bVbhAYf?w=1278&h=722);   大家好,我是@IT·平...

    z2xy 評論0 收藏0
  • 程序如何生成海報分享朋友圈

    摘要:項目需求寫完有一段時間了,但是還是想回過來總結一下,一是對項目的回顧優化等,二是對坑的地方做個記錄,避免以后遇到類似的問題。需求利用微信強大的社交能力通過小程序達到裂變的目的,拉取新用戶。摘要: 小程序開發必備技能啊... 原文:小程序如何生成海報分享朋友圈 作者:小白 Fundebug經授權轉載,版權歸原作者所有。 項目需求寫完有一段時間了,但是還是想回過來總結一下,一是對項目的回顧優...

    lemon 評論0 收藏0

發表評論

0條評論

baihe

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<