收藏
回答

客服会话点击两次才进入

问题模块 框架类型 问题类型 API/组件名称 终端类型 操作系统 微信版本 基础库版本
API和组件 小程序 Bug button 微信iOS客户端 Android 6.6.7 2.1.0

项目中有个客服会话功能

用户授权成功,会话按钮才会显示.

在已授权的情况下,进入小程序必须要点两次会话按钮才可以进入客服会话页面.

如果已打开小程序,就是说进入了会话再退出会话返回首页,然后点击会话按钮,一次就可以进入.

如果用户没打开小程序,再打开小程序点击进入会话 要点击两次才可以进入.

请问这是什么原因?

代码如下:

<view class='btn_foot'>

    <button  wx:if="{{isShouQuan}}" class='btn1' open-type='contact'>点击咨询</button>

    <button wx:else class='btn1' open-type="getUserInfo" bindgetuserinfo="getUserInfo" lang='zh_CN'>点击咨询</button>

</view>


最后一次编辑于  2018-06-21
回答关注问题邀请回答
收藏

2 个回答

  • Smilence
    Smilence
    2018-06-21

    我猜这是你服务器自己授权逻辑的问题。


    2018-06-21
    赞同
    回复 5
    • 前行
      前行
      2018-06-21

      逻辑没有问题,就挺简单的.授权成功返回信息后就把变量 isShouQuan 改为true  否则就是false

      2018-06-21
      回复
    • Smilence
      Smilence
      2018-06-21

      你检查一下,getUserInfo是在wx.login之前还是之后调用的。

      wx.getUserInfo一定要在wx.login之后调用,否则第二次login会刷新session_key,导致其中的signature第一次校验失败,第二次成功。

      2018-06-21
      回复
    • 前行
      前行
      2018-06-21回复Smilence

      在wx.login之后,因为wx.login 在onload函数里. getUserInfo是点击才会触发 我代码发出来 您看看

      Page({

          data: {

              isShouQuan:false,

              code:''

             },

          onLoad: function () {

                var that=this;

                wx.login({

                      success:function(res){

                          that.setData({

                              code:res.code

                          })

                      }

                  })

          },

      getUserInfo:function(e){

          var that=this;

          if(e.detail.errMsg=='getUserInfo:ok'){

              that.setData({

                  isShouQuan:true

              })


          }

         }

      })


      2018-06-21
      回复
    • Smilence
      Smilence
      2018-06-21

      从这里看不出什么问题,你还是做一下代码片段,这样才能看出来。

      如果是要依赖你自己服务器授权access_token的,你可以通过日志来查看一下第一次点击发生了什么。

      如果你是单纯客户端的,你可以检查一下第一次点击有没有发生什么。

      2018-06-21
      回复
    • 前行
      前行
      2018-06-21回复Smilence

      好的,非常感谢!我试试

      2018-06-21
      回复
  • 前行
    前行
    2018-06-21

    大家都没遇到过这样的问题吗?

    2018-06-21
    赞同
    回复