关于应用UI组件的移动端适配方式
作者:Serena_tz 发布时间:2024-04-27 16:12:01
标签:UI组件,移动端,适配
在移动端开发应用UI组件也会遇到一系列需要注意的问题。
问题1
比如说,标签页是一个整体的组件,但是我们需要将标签页的标题和其他组件一起固定到顶部就要将标签页标题分离出来,这时候我们可以自己写一个样式在将标题分离
具体的代码:
// 组件
<van-sticky>
<van-nav-bar title="列表" border></van-nav-bar>
<div class="top">
<div class="title" :class="{ active: active==0 }" @click="active=0">待审批</div>
<div class="title" :class="{ active: active==1 }" @click="active=1">已审批</div>
</div>
</van-sticky>
<to-do v-if="active==0"></to-do>
<have-to-do v-if="active==1"></have-to-do>
// 数据
export default {
data() {
return {
active: 0,
}
},
}
主要原理就是使用一个数据,例如active进行标记。点击不同的标题时,修改该数据标记的值,并且不同的标题在active标识激活后改变样式,并且切换不同的面板。
问题2
同时,以vant组件为例,这类组件自身用的单位是px,但是用作移动端适配,我们应该选择rem,所以要进行一下转换。
1.安装lib-flexible
安装命令
npm install lib-flexible --save
这个插件原理就是根据屏幕宽度的变化从而自动设置html根节点下的font-size大小。
2.在项目的入口引入lib-flexible
在main.js中添加:
import ‘lib-flexible'
3.安装postcss-px2rem-exclude
安装命令
npm install postcss-px2rem-exclude --save
这个插件在打包项目的时候将px像素转换为rem像素。
4.配置postcss.config.js
Vue3.0项目下默认没有这个文件,我们可以自己手动新建一个postcss.config.js文件。并填入相应的配置内容,如下:
module.exports = {
plugins: {
autoprefixer: {},
'postcss-px2rem-exclude': {
//37.5是根据Vant组件的设计稿是375得来的,lib-flexible插件默认是将375分为10等分,如果UI组件的设计稿是750,那么这里的设置就是填750/10=75
remUnit: 37.5,
exclude: /folder_name/i
}
}
}
接下来,启动项目就可以看到组件已经完成了移动端的适配。
来源:https://blog.csdn.net/Serena_tz/article/details/116449631


猜你喜欢
- 为了提高工作效率(偷懒),用python去解决。工作需要,需要将excel文件转化为csv文件,要是手工的一个个去转换,每个sheet页不但
- 在以前的日志中讲了怎么制作验证码,这篇就讲讲怎么给验证码加上起干扰效果的杂点。 其实很简单,首先做一个
- 提叻一个代码段,要人帮助解释一下。 代码段如下: declare type t_indexby is table of number ind
- torch.nn.BatchNorm1d()1、BatchNorm1d(num_features, eps = 1e-05, momentu
- 有时候,我们需要将文本转换为图片,比如发长微博,或者不想让人轻易复制我们的文本内容等时候。目前类似的工具已经有了不少,不过我觉得用得都不是很
- 目录前言前期准备数据的选择与获取分词筛选与可视化总结前言”数据可视化“这个话题,相信大家并不陌生,在一些平台,经常可以看到一些动态条形图的视
- 前言:项目的成就感来源于大家~~必须先感谢一切该感谢的人!(旁白:写了很多次设计实录分享,这次是最百感交集的一次,话多这习惯还大家海涵~嘻嘻
- 本文实例总结了Python常用的小技巧。分享给大家供大家参考。具体分析如下:1. 获取本地mac地址:import uuidmac = uu
- 目录1.变量的引用的底层原理2.变量的分类Python的变量,简单来说有数值型,布尔型,字符串类型,列表,元组,字典等6大类。那么不同变量类
- 我们知道 map 和 filter 是两种有效的 Python 方法来处理可迭代对象。但是,如果你同时使用 map 和 filter,代码可
- 今天早上到现在,一直在搞一个很愚蠢的问题,竟然一直没发现 如果$str=""; $str = "$str-$s
- 问题:关于如何生成随机记录(二)如何从指定表中随机抽取一定量的记录?sql server 中 select top 10 * fr
- 在安装完数据库后,由于自己不小心直接关闭了安装窗口,或者长时间没有使用root用户登录系统,导致忘记了root密码,这时就需要重置MySQL
- 在日常的工作中,有时候会有这样的需求,需要一个常驻任务,持续的监听一个目录下文件的变化,对此作出回应.pyinotify就是这样的一个pyt
- asp分页做为一个经典的asp问题,有着非常丰富的分页形式和分页方法,但是大多数的asp分页都是使用VBscript作为服务器端的脚本,本文
- 代码如下:<% sql="select * from serr where
- 一、动机(Motivate)“模板方法”,就是有一个方法包含了一个模板,这个模板是一个算法。在我们的
- Pygame的Event事件模块事件(Event)是 Pygame 的重要模块之一,它是构建整个游戏程序的核心,比如常用的鼠标点击、键盘敲击
- Python zfill()方法返回指定长度的字符串,原字符串右对齐,前面填充0。zfill()方法语法:str.zfill(width)参
- 很多人在学习了基本的Python语言知识后,就转入应用阶段了,后期很少对语言本身的新变化、新内容进行跟踪学习和知识更新,甚至连已经发布了好几