89 lines
1.7 KiB
Vue
89 lines
1.7 KiB
Vue
|
|
<template>
|
||
|
|
<!-- #ifndef H5 -->
|
||
|
|
<view class="nav-box" :style="{'height':height}">
|
||
|
|
<!-- 状态栏占位 -->
|
||
|
|
<view class="status_bar" :style="{'height':statusBarHeight}"></view>
|
||
|
|
<!-- 导航内容 -->
|
||
|
|
<view class="nav-main" :style="{'height': navBarHeight}" style="font-size: 16px;opacity: 1;">
|
||
|
|
<view class="title-info">{{title}}</view>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<!-- #endif -->
|
||
|
|
<!-- #ifdef H5 -->
|
||
|
|
<view style="background-color: #ffffff;" :style="{'height':statusBarHeight}"></view>
|
||
|
|
<!-- #endif -->
|
||
|
|
</template>
|
||
|
|
|
||
|
|
<script>
|
||
|
|
export default {
|
||
|
|
props: {
|
||
|
|
title: {
|
||
|
|
type: String,
|
||
|
|
default: ''
|
||
|
|
},
|
||
|
|
},
|
||
|
|
data() {
|
||
|
|
return {
|
||
|
|
// 自定义导航栏高度总和
|
||
|
|
height: 0,
|
||
|
|
// 状态栏高度
|
||
|
|
statusBarHeight: 0,
|
||
|
|
// 导航栏高度(不包含状态栏)
|
||
|
|
navBarHeight: 0
|
||
|
|
}
|
||
|
|
},
|
||
|
|
created() {
|
||
|
|
let that = this;
|
||
|
|
uni.getSystemInfo({
|
||
|
|
success: function(res) {
|
||
|
|
if (res.model.indexOf('iPhone') !== -1) {
|
||
|
|
that.navBarHeight = 44 + 'px'
|
||
|
|
that.height = res.statusBarHeight + 44 + 'px'
|
||
|
|
} else {
|
||
|
|
that.navBarHeight = 48 + 'px'
|
||
|
|
that.height = res.statusBarHeight + 48 + 'px'
|
||
|
|
}
|
||
|
|
that.statusBarHeight = res.statusBarHeight + 'px';
|
||
|
|
}
|
||
|
|
})
|
||
|
|
},
|
||
|
|
methods: {
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|
||
|
|
</script>
|
||
|
|
|
||
|
|
<style>
|
||
|
|
.nav-box {}
|
||
|
|
|
||
|
|
.status_bar {
|
||
|
|
/* width: 100%; */
|
||
|
|
background-color: #ffffff;
|
||
|
|
}
|
||
|
|
|
||
|
|
.nav-main {
|
||
|
|
/* position: fixed; */
|
||
|
|
padding: 7px 3px;
|
||
|
|
text-align: center;
|
||
|
|
overflow: hidden;
|
||
|
|
box-sizing: border-box;
|
||
|
|
z-index: 998;
|
||
|
|
background-color: #ffffff;
|
||
|
|
/* width: 100%; */
|
||
|
|
}
|
||
|
|
|
||
|
|
.title-info {
|
||
|
|
display: flex;
|
||
|
|
align-items: center;
|
||
|
|
justify-content: center;
|
||
|
|
color: #000;
|
||
|
|
text-align: center;
|
||
|
|
line-height: 30px;
|
||
|
|
/* font-weight: bold; */
|
||
|
|
}
|
||
|
|
|
||
|
|
.nav-main-title {
|
||
|
|
color: #000;
|
||
|
|
font-size: 32px;
|
||
|
|
}
|
||
|
|
</style>
|