时间:2021-05-25
一、业务背景
最近在利用mpvue+ts开发小程序的过程中,由于苹果X等手机会出现底部的按钮,会遮盖掉需要操作的按钮。由于在小程序开发,微信爸爸已经做了对机型的检查,相对与H5的处理来说方便很多了。下面就稍微罗列一下解决方案。
二、实现思路
三、实现过程
1、判断机型方法
小程序的官方文档提供了一个方法wx.getSystemInfo,我们可以利用该方法来对小程序的对应的手机型号进行判断,是否需要加上安全距离。在工具类文件新建safe-area.js文件,编写下面代码,这里返回一个Project,方便取值。
2、注入全局组件mixin
因为mpvue是具有mixin这个属性的,我们可以利用混入安全距离的处理方法。用法基本跟vue一致。新建mixins.js,注入插件,在这个过程中需要注意一点,就是如果不进行页面类型的判断,会出现如果引用组件也会进行注入该方法。所以需要加入进行判断
在mounted过程中进行处理,可以避免不必要的注入。
在main.js中注册该插件
3、加入全局安全距离css
为了我们不需要在每一个文件进行样式的声明,我们可以在全局样式中写入安全距离的类
4、页面上进行class类处理
处理完以上部分我们可以对页面上需要处理的区域,加入:class="{safeArea: isIPhoneX}"进行修改,例如:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
iPhoneX对于微信小程序的tabbar来说,会被底部小黑条覆盖,需要处理,大概思路是,得到手机型号、分别判断样式,即可,如下:安全区域指的是内容可见区域(图
在我们日常生活中,经常会用到剪辑软件来处理视频。有时候我们需要给视频添加字幕,但是为了防止字幕添加到视频区域之外,可以打开安全边距。那什么是安全边距?安全区域包
7月22日消息,据第一财经报道,尽管近日河南连日暴雨造成汛情,京东物流、中通快递、申通快递等多家快递公司对记者表示,在保证安全的情况下,部分安全区域的快递仍在派
边界防火墙部署在互联网的边界上,通过防火墙的安全区域划分和安全策略配置来实现只允许外网访问Web服务器的单个IP地址,并且仅仅允许其访问Web服务器对外提供We
一、安全区域(safearea)与iPhone6/6s/7/8相比,iPhoneX无论是在屏幕尺寸、分辨率、甚至是形状上都发生了较大的改变,下面以iPhone8