vue3+vant创建移动端项目,实战项目常见采坑记录
前言:
产品背景介绍
我所做的这个项目,刚开始是没有移动端需求的,等PC端做完了上线使用了几个月后,突然有一天产品经理找到我说是要做一个在PC端添加一个快速注册入口,用手机微信扫二位码进入移动端注册页面,用户注册。
所以本次需求就是在PC端添加一个tool-tip气泡型弹出二维码,再开发一个移动端注册页面。
起初我是在PC项目中引入vant新加了一个模块来存放移动注册页面和注册成功页面的,然后想使用postcss-px-to-viewport的exclude和include属性配置来区分PC和移动页面,避免样式干扰。
然而,是我天真了,看网上各种postcss-px-to-viewport的exclude和include的配置,更换各个版本以及相似的更新版本,都不能完美做到兼容移动端和PC端,我就放弃了移动pc放在一个项目中了,最终只能单独的把移动页面单独摘出来成立一个单独项目跑,坑爹啊。
- 表单密码可见切换以及不让输入汉字空格
代码实现:
digit属性让只能输入数字,但这个不符合产品需求,密码应为数字、字母、特殊符号都可输入。2. 移动端页面出现X轴滚动条问题
3.使用postcss-px-to-viewport做适配出现的问题

备注:其中的exclude属性不知道树我本人写的有问题还是怎么的,想用它处理views目录下的特定目录文件总是不生效,include就更别说了,各种版本、各种写法都换过了没啥nuan用。
4.检测是否是移动端打开跳转不同路由
1)路由处理

export const ISMOBILE = function () {

5. DatePicker日期选择器默认选中当前日期
在这块有2个坑:
1)它的年份默认最小2013,不能像elementui的日期选择器一样自由选择,所以,使用时你可以使用min-date属性设置最小年月日。
2)默认选中当前年月日,

6. 表单校验添加
1)一定要给van-form中添加ref属性,在van-field中使用name作为校验标识,使用rules属性添加校验规则。
备注:想要对一个字段进行不同校验以及不同提示,只能使用多条校验规则。此处不能像使用elementUi中的callback返回提示语,只能使用message属性写死,操蛋啊


7.文件上传预览删除
直接上代码,很明了:

vue3+vant创建移动端项目,实战项目常见采坑记录的更多相关文章
- Asp.Net Core 2.0 项目实战(9) 日志记录,基于Nlog或Microsoft.Extensions.Logging的实现及调用实例
		本文目录 1. Net下日志记录 2. NLog的使用 2.1 添加nuget引用NLog.Web.AspNetCore 2.2 配置文件设置 2.3 依赖配置及调用 ... 
- 前端开发工程师 - 06.Mini项目实战 - 项目简介
		第6章--Mini项目实战 项目简介 Mini项目简介-Ego社区开发 回顾: 页面制作 页面架构 JavaScript程序设计 DOM编程艺术 产品前端架构 实践课Mini项目--Ego: 主题:漫 ... 
- 彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-项目入口与路由EP01
		书接上回,我们已经安装好Iris框架,并且构建好了Iris项目,同时配置了fresh自动监控项目的实时编译,万事俱备,只欠东风,彩虹女神蓄势待发.现在我们来看看Iris的基础功能,如何编写项目入口文件 ... 
- 基于 Vue3.0 Composition Api 快速构建实战项目
		Quick Start 项目源码:https://github.com/Wscats/vue-cli 本项目综合运用了 Vue3.0 的新特性,适合新手学习 
- vueJS+ES6开发移动端APP实战项目笔记
		一.什么是MVVM框架 MV*包括MVC.MVP.MVVM MVVM框架由Model.View.ViewModel构成. Model指的是数据,在前端对应的是JavaScript对象. View指的是 ... 
- Ant Design Vue Pro 项目实战-项目初始化(一)
		写在前面 时间真快,转眼又是新的一年.随着前后端技术的不断更新迭代,尤其是前端,在目前前后端分离开发模式这样的一个大环境下,交互性.兼容性等传统的开发模式已经显得有些吃力.之前一直用的是react,随 ... 
- 关于” 记一次logback传输日志到logstash根据自定义设置动态创建ElasticSearch索引” 这篇博客相关的优化采坑记录
		之前写过一篇博客是关于记录日志的简单方式的 主要就是 应用->redis->logstash->elasticsearch 整个流程的配置方法和过程的 虽然我们部分线上应用使用 ... 
- Asp.Net Core 2.0 项目实战(11) 基于OnActionExecuting全局过滤器,页面操作权限过滤控制到按钮级
		1.权限管理 权限管理的基本定义:百度百科. 基于<Asp.Net Core 2.0 项目实战(10) 基于cookie登录授权认证并实现前台会员.后台管理员同时登录>我们做过了登录认证, ... 
- Asp.Net Core 2.0 项目实战(8)Core下缓存操作、序列化操作、JSON操作等Helper集合类
		本文目录 1. 前沿 2.CacheHelper基于Microsoft.Extensions.Caching.Memory封装 3.XmlHelper快速操作xml文档 4.Serializatio ... 
- Asp.Net Core 2.0 项目实战(7)MD5加密、AES&DES对称加解密
		本文目录 1. 摘要 2. MD5加密封装 3. AES的加密.解密 4. DES加密/解密 5. 总结 1. 摘要 C#中常用的一些加密和解密方案,如:md5加密.RSA加密与解密和DES加密等, ... 
随机推荐
- jmeter的三种参数化方式
			一.通过添加前置处理器(用户参数) 1. 在http层级下添加--前置处理器--用户参数 2.可以修改名称,每次迭代更新一次(一定要勾选上),这样才会每次迭代变量值也更新 ,点击下面添加用户(多次测试 ... 
- Python操作数据库读书笔记
			SQLite 简介 什么是 SQLite? SQLite是一个进程内的库,实现了自给自足的.无服务器的.零配置的.事务性的 SQL 数据库引擎.它是一个零配置的数据库,这意味着与其他数据库一样,您不需 ... 
- windows服务器部署mysql
			一.Mysql安装教程就不上传了,百度很多的很详细的. 二.配置环境变量:我的电脑右键=>属性=>高级系统设置=>环境变量=>系统变量下找到Path,选中编辑, 变量值后面添加 ... 
- [Unity工具]搭建lua环境(IDEA)
			一.下载IDEA 地址:https://www.jetbrains.com/idea/ 这里我的版本是IntelliJ IDEA Community Edition 2020.2.4 x64 二.断点 ... 
- [Unity动画]07.Animation
			一.面板信息 1.Length,单位是秒 2.如下,动画是30FPS,即1秒播放30帧 3.如下,显示0:18,前面的0表示秒数,后面的18表示帧数,计算方法是0.6*30=18 4.如下,1.333 ... 
- 9. PEP8规范
			1. 每一级缩进4个空格 2. 续行时缩进要比正常行多缩进, 要能明显看出是续行的 3. 每一行最多79个字符 4. 函数和类定义时在前后加2个空行, 类内接口在定义时, 前后加1个空行 5. 二元运 ... 
- Android开发环境的搭建(一)
			开发环境的搭建 Android 应用程序一般使用 Android 软件开发工具包,采用 Java 语言来开发. Android软件开发需要用到的开发工具,如图所示: JDK:相信大家在学习Java语言 ... 
- 干货来袭!3天0基础Python实战项目快速学会人工智能必学数学基础全套(含源码)(第3天)概率分析篇:条件概率、全概率与贝叶斯公式
			第1天:线性代数篇:矩阵.向量.实战编程 第2天:微积分篇:极限与导数.梯度下降.积分.实战编程 第3天:概率分析篇:条件概率与全概率.贝叶斯公式.实战项目 目录 前言 一.概率与机器学习 1.1 概 ... 
- Linux & 标准C语言学习 <DAY5>
			一.if分支语句 if(表达式) //单分支语句 { //表达式的值为真,则执行此处代码 } if(表达式) //双分支语句 { ... 
- 用户地址管理---新增、设置默认地址、根据id查询所有地址、查询默认地址、查询指定用户的全部地址
			导入用户地址簿相关功能代码 需求分析: 地址簿,指的是移动端消费者用户的地址信息,用户登录成功后可以维护自己的地址信息.同一个用户可以有多个地址信息,但是只能有一个默认地址. 用户的地址信息会存储在a ... 
