说到兼容,那么我们先获取系统信息看看。
wx.getSystemInfo(OBJECT)
获取系统信息
同步: wx.getSystemInfo({
success: function(res) {
console.log("异步获取系统信息:");
console.log(res);
},
})
异步:
try {
var res = wx.getSystemInfoSync()
console.log("同步获取系统信息:");
console.log(res);
} catch (e) {
console.log("get fail");
}
判断是否可以在该基础库版本下直接使用对应的API或者组件的API:
wx.canIUse(String)
wx.canIUse('openBluetoothAdapter')
wx.canIUse('getSystemInfoSync.return.screenWidth')
wx.canIUse('getSystemInfo.success.screenWidth')
wx.canIUse('showToast.object.image')
wx.canIUse('onCompassChange.callback.direction')
wx.canIUse('request.object.method.GET')
wx.canIUse('contact-button')
wx.canIUse('text.selectable')
wx.canIUse('button.open-type.contact')
使用该api就可以对所有的组件、api等进行判定。
判定使用方式:
Page({
data:{
value:""
},
onLoad:function(e){
var that = this;
wx.showModal({
success: function (res) {
if (wx.canIUse('showModal')) {
console.log(res)
}
that.setData({
value: wx.canIUse('showModal')
})
console.log("value:"+that.data.value)
}
})
}
})
对于接口,官网说的好像有一点不同,不过测试后发现其实效果差不多。
if (wx.showModal) {
wx.showModal()
console.log("no");
} else {
// 如果希望用户在最新版本的客户端上体验您的小程序,可以这样子提示
wx.showModal({
title: '提示',
content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'
})
}