使用uni或者微信提供的api uniapp开发者文档
微信小程序微信开发者文档
uni使用safeAreaInsets参数
微信使用safeArea参数
/**
获取到屏幕的安全区域
全面屏的值为to顶部状态栏和bottom底部黑线安全区
*/
export function getSafeAreaInsets() {
let safeAreaInsets = 0
uni.getSystemInfo({
success: function (res) {
console.log(res.model);
console.log(res.pixelRatio);
console.log(res.windowWidth);
console.log(res.windowHeight);
console.log(res.language);
console.log(res.version);
console.log(res.platform);
console.log(res.safeAreaInsets)
console.log(res)
safeAreaInsets = res.safeAreaInsets
}
})
return safeAreaInsets
}
封装一个工具,哪个页面用哪里就调用,微信小程序把uni. 换成wx. 就行
下面是我的底栏html代码,绑定一个动态的style属性
data里声明变量padding:'padding-bottom:0'
下面是页面加载时调用,我这里直接使用他返回的bottom值感觉有点大,我自己减去了10,大家可以自己调整
onLoad: function (option) {
let safeBottom = getSafeAreaInsets().bottom
if(safeBottom > 0){
this.padding = 'padding-bottom:'+(safeBottom-10)*2+'rpx'
}
console.log(this.padding)
},
然后就搞定了