本次小程序的开发使用uni app+vant weapp,vant weapp如何引用和部分组件使用方法如下

引入

在github(https://github.com/youzan/vant-weapp)下载dist文件,在项目目录下创建wxcomponents/vant,把dist文件复制进来

在pages.json中,如果很多个页面都会引用某组件,就在globalstyle中引入

"globalStyle": {

"navigationBarTextStyle": "black",

"navigationBarTitleText": "uni-app",

"navigationBarBackgroundColor": "#F8F8F8",

"backgroundColor": "#F8F8F8",

"usingComponents": {

"van-button": "/wxcomponents/vant/button/index",

"van-icon": "/wxcomponents/vant/icon/index",

"van-cell": "/wxcomponents/vant/cell/index"

}

}

单页引用,在对应页的style中

{

"path": "pages/home/home",

"style": {

"navigationBarTitleText": "首页",

"usingComponents": {

"van-button": "/wxcomponents/vant/button/index",

"van-icon": "/wxcomponents/vant/icon/index"

}

}

}

表单

UI界面如下

输入框van-filed

注意:van-field并没有直接实现双向绑定,需要在input事件上重新赋值

//模板中

//js中

methods:{

getDeviceSn(e) {

this.updateParam.deviceSn = e.detail

},

}

精简写法如下

登录验证码

点击后

template

@input="inputCode">

{{tip}}

在data中定义两个变量

timer: null,

tip: '发送验证码'

methods

sendCode() {

let time = 10

this.tip = time + 's后重试'

this.timer = setInterval(() => {

if (time === 1) {

this.tip = '发送验证码'

clearInterval(this.timer)

this.timer = null

} else {

time--

this.tip = time + 's'

}

}, 1000)

},

弹出层+选择器

弹出层van-popop和选择器van-picker配合使用,实现效果如下

代码

// template

// methods

chooseOrg(e) {

this.updateParam.orgId = e.detail.value.id

this.orgName = e.detail.value.name

this.popupFlag = fasle

this.getMemberList(this.updateParam.orgId)

},

在vant-weapp中,简单选择器的实现需要定义三个变量,1个方法:

变量1:数组,即在选择器中遍历的数组

变量2:flag,控制弹出层的显示和隐藏

变量3:van-field中的value,即你选中项的文字说明

方法1:当你点击确认时,把选中项的id放入表单,文字说明改成你选中项的名字

用vant weapp选择器优点:

我们可以控制弹出层的方向

样式层面上的铺垫和圆角弹出层

vant有日期事件选择器

跨移动端平台

缺点:

当你一个表单有多个选择器的时候,那其中的变量就需要定义很多

很多工作是重复比如打开弹出层关闭弹出层

对比uni或小程序原生picker选择器,只要一个变量和一个方法,但是用了样式又不统一了

因此需要自己基于vant-weapp封装一个选择器,封装组件请查看另一篇笔记

省市区picker  van-area

showAreaPopup() {

this.areaFlag = true

},

closeAreaPopup() {

this.areaFlag = false

},

chooseArea(e) {

this.updateParam.areaCode = e.detail.values[2].code

this.areaName = e.detail.values[0].name + ',' + e.detail.values[1].name + ',' + e.detail.values[2].name

this.closeAreaPopup()

},

地图

获取当前位置

getGps() {

let self = this

uni.getLocation({

type: 'wgs84',

success: function(res) {

self.gps = res.longitude + ',' + res.latitude

self.updateParam.gpsLng = res.longitude

self.updateParam.gpsLat = res.latitude

}

});

},

选择位置,代码和效果如下

showMapPopup() {

let self = this

uni.chooseLocation({

success: function (res) {

self.gps = res.longitude + ',' + res.latitude

self.updateParam.gpsLng = res.longitude

self.updateParam.gpsLat = res.latitude

self.updateParam.addressDetail = res.name

}

});

},

vant 验证手机号_【uni app】vant weapp的引入和部分详细调用(表单输入框、验证码、弹出层搭配选择器、地图)...相关推荐

  1. vant 验证手机号_手机维修英汉小辞典(V字头1:VA-VB)

    V-volt 伏特 V-DCSLNA 1800MHz 低噪声放大器供电 V-GSMLNA 900MHz 低噪声放大器供电 V-ANA 多模转换器电源 V-ANT Voltage Antenna 天线供 ...

  2. vue vant Popup 弹出层 与 Picker 选择器 的完美结合 实现多级列表选择

    前言: 在写项目的时候,经常会碰到选择列表,为了更完美的实现效果,使用了vant里面的 Popup 弹出层 + Picker 选择器 效果图: 页面结构: van-field 是vant里面的输入框组 ...

  3. 小程序UI组件 Vant Weapp Popup弹出层和Picker选择器 组合使用按钮被遮盖恢复不了的问题

    Vant Weapp Popup弹出层和Picker选择器 组合使用, 如果picker在popup上存在滚动条, 在开发者工具上鼠标可以滚动还原picker的确认和取消按钮位置, 但是在真机上,把p ...

  4. 微信小程序 - vant popup弹出层阻止底层页面滑动

    前言 在小程序编写过程当中使用使用vant weapp的popup组件作小程序的弹出层,触屏致使底层页面跟着滑动.web 解决方法 使用touch事件阻止属性,@touchmove.stop.prev ...

  5. vant popup弹出层多选功能

    一.效果图 二.代码块 <template><div><van-button @click="btn" size="mini"&g ...

  6. 小程序中input标签没有反应_解决微信小程序弹出层中input无法聚焦的问题

    此处使用的是vant框架 解决聚焦问题 这里遇到的问题是,在点击搜索框后,设置了弹起的弹出层中van-search的foucs值为true 但是没有起到聚焦效果 原因在于弹出框带有一个动画效果,需要在 ...

  7. uni-app里的拓展组件uni ui与UI框架uView UI的Popup 弹出层的区别!

    uni-app里的拓展组件uni ui与UI框架uView UI的Popup 弹出层的区别! 文章目录 1.官网Popup 弹出层链接 2.属性不同 3.属性对照 4.弹出的方式 5.uView特有属 ...

  8. JavaScript学习笔记(九)(验证框架,layer弹出层)

    JavaScript学习笔记(九) 一.jQuery Validate验证框架 1.引入相关插件路径 2. 修改一些规则 3. 自定义验证规则 4.异步验证 整体代码 二.layer弹出层 1.引入相 ...

  9. ajax如何实现表单验证码,Ajax实现提交表单时验证码自动验证(原创自Zjmainstay)...

    本文通过源码展示如何实现表单提交前,验证码先检测正确性,不正确则不提交表单,更新验证码. 1.前端代码 index.html 验证码提交自验证 用户名 验证码 (function($){ $(docu ...

最新文章

  1. struts2登录后返回登录前的页面
  2. 关于Redis的数据迁移(三种方法)
  3. [ webpack4 ] 配置属于自己的打包系统教程(最终篇)—— 环境配置篇
  4. 更多Java之行内容,需要看直播请关注微薄
  5. 改进博客园Markdown显示功能(加代码行号、显示代码所用编程语言)
  6. 用Python生成随机的中文验证码图片
  7. VC中海量文件读写类设计与应用(转)
  8. Mybatis 高级结果映射 ResultMap Association Collection
  9. 前端优化-Img与background
  10. (最短路 Floyd diskstra prim)Frogger --POJ--2253
  11. 复盘!12 小时清掉 3500 份生财日历
  12. 四、Hyper-v Server 2008r2 设置远程管理
  13. Dump获取和分析工具简介
  14. 联想 m73 黑苹果 软路由 esxi AIO
  15. 公司内外网同时使用方法
  16. openGL之API学习(二零四)GL_TEXTURE_MIN_FILTER GL_TEXTURE_MAG_FILTER
  17. 我是 SPI,我让框架更加优雅了!
  18. Interactive Sketch-Based Normal Map Generation with Deep Neural Networks
  19. 渗透测试常见问题以及方法
  20. 国内有哪些小众但很有意思的网站?这6个网站值得收藏

热门文章

  1. 用命令导出导入数据库常见操作
  2. 防止短信接口验证码恶意攻击
  3. 通讯录最终版——动态存储+文件处理
  4. 我用废旧的Android手机做了个机器人
  5. let、const和var的区别(涉及块级作用域)
  6. Skia深入分析7——区域解码
  7. “我想玩游戏!” 大佬:玩啥游戏,教你做一个智能贪吃蛇游戏!
  8. Cheese Cheese! ――BeijingOpenParty 2009.07“Sea viewing at Summer gloaming(夏暮观海)”后记
  9. 常用类型的json格式
  10. 操作系统-读者写者问题(写者优先)