收藏
回答

旧版本微信上小程序打不开

问题模块 框架类型 问题类型 操作系统 操作系统版本 手机型号 微信版本
客户端 小程序 Bug 10.1 oppo 6.6.1

我现在新开发的小程序,在微信版本6.6.1版本上小程序直接打不开,一直在加载界面,必须升级微信才能打开,这个怎么处理兼容?

最后一次编辑于  2018-06-28  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

1 个回答

  • Hong.Feng
    Hong.Feng
    2018-06-28

    转这个文章,希望对你有帮助。


    兼容

    小程序的功能不断的增加,但是旧版本的微信客户端并不支持新功能,所以在使用这些新能力的时候需要做兼容。

    文档会在组件,API等页面描述中带上各个功能所支持的版本号

    可以通过 wx.getSystemInfo 或者 wx.getSystemInfoSync 获取到小程序的基础库版本号。

    //getSystemInfo :获取系统信息   getSystemInfoSync :获取系统信息同步

    也可以通过 wx.canIUse 详情 来判断是否可以在该基础库版本下直接使用对应的API或者组件

    兼容方式 - 接口

    对于新增的 API,可以用以下代码来判断是否支持用户的手机。

    //bluetooth:蓝牙  adapter:适配器   modal:情态的;形式的

    if (wx.openBluetoothAdapter) {

      wx.openBluetoothAdapter()

    } else {

      // 如果希望用户在最新版本的客户端上体验您的小程序,可以这样子提示

      wx.showModal({

        title: '提示',

        content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'

      })

    }

    兼容方式 - 参数

    对于 API 的参数或者返回值有新增的参数,可以判断用以下代码判断。

    wx.showModal({

      success: function(res) {

        if (wx.canIUse('showModal.cancel')) {

          console.log(res.cancel)

        }

      }

    })

    兼容方式 - 组件

    //contact:接触;

    对于组件,新增的属性在旧版本上不会被处理,不过也不会报错。如果特殊场景需要对旧版本做一些降级处理,可以这样子做。

    Page({

      data: {

        canIUse: wx.canIUse('button.open-type.contact')

      }

    })

    <button wx:if="{{canIUse}}" open-type="contact"> 

    客服消息

    </button>

    <contact-button wx:else></contact-button>


    2018-06-28
    赞同
    回复 1
    • 为你寻遍全世界
      为你寻遍全世界
      2018-06-28

      但是我的问题是 小程序启动不了,都没有进到我的出现,升级微信就可以

      2018-06-28
      回复