【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'}"

相关推荐
亿元程序员38 分钟前
小伙伴说我的拼图游戏用Mask不能合批...
前端
恋猫de小郭40 分钟前
AI 正在造就你的「认知卸载」,但是时代如此
前端·人工智能·ai编程
摸鱼的春哥1 小时前
Agent教程14:记忆才是Agent开发的核心
前端·javascript·后端
明月_清风1 小时前
Clipboard API 深度实战:如何同时存入“纯文本”和“富文本”两种格式?
前端·javascript
明月_清风1 小时前
权限陷阱:为什么你的“点击复制”在某些浏览器或 iframe 里会失效?
前端·javascript
掘金安东尼11 小时前
让 JavaScript 更容易「善后」的新能力
前端·javascript·面试
掘金安东尼11 小时前
用 HTMX 为 React Data Grid 加速实时更新
前端·javascript·面试
灵感__idea13 小时前
Hello 算法:众里寻她千“百度”
前端·javascript·算法
yinuo14 小时前
轻松接入大语言模型API -04
前端
袋鼠云数栈UED团队14 小时前
基于 Lexical 实现变量输入编辑器
前端·javascript·架构