【Uniapp-Vue3】获取用户状态栏高度和胶囊按钮高度

在项目目录下创建一个utils文件,并在里面创建一个system.js文件。

在system.js中配置如下代码:

javascript 复制代码
const SYSTEM_INFO = uni.getSystemInfoAsync();

// 返回状态栏高度
export const getStatusBarHeight = ()=> SYSTEM_INFO.statusBarHeight || 15;

// 返回胶囊的高度(包括距离状态栏的部分)
export const getTitleBarHeight = ()=>{
	if(uni.getMenuButtonBoundingClientRect) {
		let {top, height} = uni.getMenuButtonBoundingClientRect();
		return height + (top - getStatusBarHeight()) * 2;
	}else{
		return 40;
	}
}

在script标签中引入:

import {getStatusBarHeight, getTitleBarHeight} from "@/utils/system.js";

我们在没有设置状态栏高度和胶囊按钮高度的时候是如下状态:

直接在标签中进行配置:

:style="{height:getStatusBarHeight()+'px'}"

:style="{height:getTitleBarHeight()+'px'}"

相关推荐
Huazzi.几秒前
打造惊艳的渐变色下划线动画:CSS实现详解
前端·css
秋野酱4 分钟前
基于Spring Boot+Vue 网上书城管理系统设计与实现(源码+文档+部署讲解)
vue.js·spring boot·后端
北方之mini鱼6 分钟前
使用Construct开发一个HTML5小游戏究竟需要多长时间?
前端·html·html5
佬乔14 分钟前
JWT-验证
java·服务器·前端
网络大镖客21 分钟前
JavaScript高级进阶(五)
开发语言·前端·javascript
星空寻流年44 分钟前
css3伸缩盒模型第一章(主轴以及伸缩盒模型)
前端·css·css3
酷爱码2 小时前
好看的个人主页HTML源码分享
前端·html
三思而后行,慎承诺2 小时前
react的fiber 用法
前端·javascript·react.js
Deepsleep.2 小时前
前端性能优化面试回答技巧
前端·面试·性能优化
工业互联网专业3 小时前
基于springboot+vue的健康健身追踪系统
java·vue.js·spring boot·毕业设计·源码·课程设计·健康健身追踪系统