Uni-App,解决微信小程序和H5自定义状态栏兼容问题
目录
Uni-App,解决微信小程序和H5自定义状态栏兼容问题
脚本部分:
在微信小程序中最主要的两个接口:uni.getSystemInfoSync()和uni.getMenuButtonBoundingClientRect()
<script>
export default {
data() {
return {
statusBarHeight: 0,
}
},
onLoad() {
// #ifdef MP-WEIXIN //判断只有在微信小程序中执行
let systemInfo = uni.getSystemInfoSync()
this.statusBarHeight = systemInfo.statusBarHeight
console.log("N",systemInfo.statusBarHeight)
let menuButtonInfo = uni.getMenuButtonBoundingClientRect()
this.statusBarHeight = (menuButtonInfo.top - this.statusBarHeight) + menuButtonInfo.height + systemInfo.statusBarHeight
// #endif
console.log("S",menuButtonInfo.top ,menuButtonInfo.height)
console.log('M',this.statusBarHeight)
// #endif //结束
},
}
HTML部分:
<view class="status_bar" :style="{height:statusBarHeight+'px'}">
<!-- 这里是状态栏 -->
</view>
<uni-nav-bar class="navbar" title="***" leftIcon="back" rightText="***"></uni-nav-bar>