小程序基础库2.0.7更新小程序组件 <button> 新增 open-type 属性有效值 openSetting,所以说,再也不能愉快的直接调用getUserInfo了。但是不想用官方的按钮直接点击授权,依旧想使用之前的点击允许授权弹框怎么使用?

大概可以有以下思路:

我的自定义组件

<base-modal id="baseModal" modalSize="{{modalSize}}" animated="{{animated}}" backdrop="{{backdrop}}">
<view slot="header" class='modal-header'>
<text>授权登录</text>
</view> <view slot="body" class='modal-body'>
小程序请求获取你的公开信息(头像,昵称等)
</view> <view slot="footer" class='modal-footer'>
<view class="bod-right">
<button plain bindtap="_cancelModal">拒绝</button>
</view>
<view>
<button plain open-type="getUserInfo" bindgetuserinfo="_confirmModal">同意</button>
       //bindgetuserinfo在打开授权设置页后的回调
</view>
</view>
</base-modal>

首先使用自定义弹框组件,在弹框按钮处,【取消】:提示

wx.showModal({
title: '提示',
content: '您点击了拒绝授权,将无法使用该功能。请点击【确定】设置授权,或者等10分钟之后再次获取授权。',
success: (resp) => {
if (resp.confirm) {
console.log('用户点击确定')
//打开设置页面授权
wx.openSetting({
success: (succ) => {}
})
} else if (resp.cancel) {
console.log('用户点击取消')
        //跳转到选项卡指定页面,关闭其他页面
wx.switchTab({ url: "/pages/index/index" })
}
},
fail: () => {
console.log('fail')
wx.switchTab({ url: "/pages/index/index" })
}
})

点击【确定】按钮:

这回可以引用新的方法了,

跳转设置页面授权
wx.openSetting({
success: (succ) => {}
})

emm……拖了好久才出来的文章,在刚发布时就已经写得一半一半但是觉得不够完善,一直待在草稿箱里

还有一种方法是,静默登录,晚些时候再来更新完善一下

可参考这个博客的自定义组件方法内的【增强模态窗】,使用(可点击):微信小程序组件化 快速实现可用模态窗

小程序getUserInfo授权升级更新登录优化的更多相关文章

  1. WebAPI 微信小程序的授权登录以及实现

    这个星期最开始 ,老大扔了2个任务过来,这个是其中之一.下面直接说步骤: 1.  查阅微信开发文档  https://developers.weixin.qq.com/miniprogram/dev/ ...

  2. 微信小程序+php 授权登陆,完整代码

    先上图        实现流程: 1.授权登陆按钮和正文信息放到了同一个页面,未授权的时候显示登陆按钮,已授权的时候隐藏登陆按钮,显示正文信息,当然也可以授权和正文分开成两个页面,在授权页面的onlo ...

  3. 小程序和ThinkPHP5结合实现登录状态(含代码)

    本篇文章给大家带来的内容是关于小程序和ThinkPHP5结合实现登录状态(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 微信小程序中,一般会涉及三种登录方式: 1. 使用微 ...

  4. PHP实现支付宝小程序用户授权的工具类

    背景 最近项目需要上线支付宝小程序,同时需要走用户的授权流程完成用户信息的存储,以前做过微信小程序的开发,本以为实现授权的过程是很简单的事情,但是再实现的过程中还是遇到了不少的坑,因此记录一下实现的过 ...

  5. 关于微信小程序getUserInfo最新修改后,如何在原有项目的授权逻辑的调整

    今天一大早调试小程序,结果出现这个...微信小程序也是醉了,这么大的改动,也没有通过开发者服务号通知一声 人在屋檐下不得不低头(改呗,那么如何以最小的代价更新呢,下面给我的解决方案) 原来我们在首次进 ...

  6. uniapp小程序新版授权登录

    1.授权按钮: <view> <button class='login-btn' type='primary' @click="bindGetUserInfo"& ...

  7. 小程序-初次进入小程序的授权问题(授权更新后的完整步骤)button主动授权

    在此做个笔记 最开始小程序的开发时,信息授权的问题刚完善,后面腾讯就更新了新的授权方式,真心的感到心累. 后来的button,主动授权问题,时间一久就有些忘记了,最近在新开发一个小程序的拆红包活动,需 ...

  8. 使用uView UI+UniApp开发微信小程序--微信授权绑定和一键登录系统

    在前面随笔<使用uView UI+UniApp开发微信小程序>和<使用uView UI+UniApp开发微信小程序--判断用户是否登录并跳转>介绍了微信小程序的常规登录处理和验 ...

  9. 微信小程序第三方授权登录

    登录流程时序图: 1.调用uni.getProvider()获取服务供应商,参数service确定是选择对应的什么操作,此处选择授权登录oauth 代码如下: 2.调用登录接口uni.login(), ...

随机推荐

  1. HTML5 Canvas ( 圆和切点曲线的绘制 ) arc, arcTo

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. location 对象属性

    Location 对象属性 hash 返回一个URL的锚部分 host 返回一个URL的主机名和端口 hostname 返回URL的主机名 href 返回完整的URL pathname 返回的URL路 ...

  3. IIS 更新EXE文件

    IIS 更新EXE文件 MIME,add,文件扩展名带不带.都可以,会自动加上.的 文件扩展名:.exe MIME类型:application/octet-stream .ini文件

  4. javaEncode

    1.MD5加密 md5多用于用户密码加密或者签名使用,因md5不可逆,可用于身份验证. MessageDigest md5=MessageDigest.getInstance("MD5&qu ...

  5. 18 网络编程-TCP/IP各层介绍(5层模型讲解)

    1.TCP/IP五层协议讲解 物理层--数据链路层--网络层--传输层--应用层 我们将应用层,表示层,会话层并作应用层,从tcp/ip五层协议的角度来阐述每层的由来与功能,搞清楚了每层的主要协议 就 ...

  6. 安卓上为什么不能用system.io.file读取streammingAssets目录下的文件

    首先,看文档: Streaming Assets   Most assets in Unity are combined into the project when it is built. Howe ...

  7. How to Pronounce the Word ‘TO’

    How to Pronounce the Word ‘TO’ Share Tweet Share Tagged With: TO Reduction Study the TO reduction.   ...

  8. substring_index 用法

    substring_index http://blog.csdn.net/wolinxuebin/article/details/7845917 1.substring_index(str,delim ...

  9. IPMS 元件实作

    一.改用zg框架的jsp 1.引入表头和表尾jsp <%@ include file="../../jsp/menuHeader.jsp"%> <%@ inclu ...

  10. CentOS7.0重置Root的密码 (忘记密码)

    首先进入开启菜单,按下e键进入编辑现有的内核,如下图所示 然后滚动列表,找到ro,将它替换成rw,并加上init=/sysroot/bin/sh,最终变为如下图 然后按CTRL+X进入到单用户模式,在 ...