当前位置:网站首页>vant popup+其他组件的组合使用,及避坑指南
vant popup+其他组件的组合使用,及避坑指南
2022-07-05 15:21:00 【Joy_917】
做小程序开发,相信大家对于表单收集肯定不陌生。但是我们经常会碰到一些比较稍微复杂的选项,并不是简单的填一些文字,数字,或者选择一下是否就能搞定的。可能需要交互判断,或者结合其他自定义组件才能很好的展示出来,但这种组件往往都很占空间,如果一股脑都叠罗汉似的放到表单里,页面会显得非常拥挤。
那么如何解决这个问题呢?常见的方式有,popup弹出层、跳转新页面等等。
其中跳转页面的加载卡顿和不连续感会影响用户体验,除非是单独的多项收集页面,信息量很大那另说。
所以在实际应用中,popup弹出层是最常见的,用来解决组件占用屏幕问题的方式。先来看下演示:
这是一个典型的 popup + treeSelect 组件的组合,当然了,这里的treeSelect可以换成 timePicker 或者其他组件。当你觉得开新页面是大炮打蚊子,不开又很挤的时候就可以用这种方式,流畅又省空间。
用法也很简单,标签嵌套就可以了:
<van-popup show="{
{ showTree }}" round position="bottom" custom-style="height: 50%" bind:close="onCloseTreeSelect">
<van-tree-select items="{
{ items }}" main-active-index="{
{ mainActiveIndex }}" active-id="{
{ activeId }}" bind:click-nav="onClickNav" bind:click-item="onClickItem" />
</van-popup>
注意: 这里有个很坑的点是,vant 官方文档默认的 popup 属性 close-on-click-overlay——是否在点击遮罩层后关闭,默认是 true,但是如果你不实现 bind:close 方法的话,点击遮罩层是不会关闭弹出层的
另外,对于本身就有取消或者确认的组件,如果和 popup 组合时,建议覆盖 popup 的 close 按钮,否则会比较乱。
完整代码放到了github上,持续更新中,欢迎支持:https://github.com/Joy917/signgo
边栏推荐
猜你喜欢
随机推荐
Number protection AXB function! (essence)
Detailed explanation of QT creator breakpoint debugger
Noi / 1.5 37: mercenaries
Memo 00
Bugku cyberpunk
The elimination strategy of redis
Data communication foundation - Ethernet port mirroring and link aggregation
复现Thinkphp 2.x 任意代码执行漏洞
Arduino controls a tiny hexapod 3D printing robot
Database learning - Database Security
19.[STM32]HC_ SR04 ultrasonic ranging_ Timer mode (OLED display)
vulnhub-Root_ this_ box
Good article inventory
Severlet learning foundation
How difficult is it to pass the certification of Intel Evo 3.0? Yilian technology tells you
Appium automation test foundation - appium basic operation API (I)
数学建模之层次分析法(含MATLAB代码)
Redis distributed lock principle and its implementation with PHP (2)
Common redis data types and application scenarios
Write a go program with vscode in one article