微信小程序中的上拉、下拉菜单功能


Posted in Javascript onMarch 13, 2020

问题描述

在使用小程序的时候基本的页面的一般都是很简洁的,所以会有一些菜单来做简单的诠释说明,或者是提供一些选项。这些菜单的弹出方式一般是向上和向下,那么如何来设置这些上下拉的菜单呢?

解决方案

上下拉菜单在微信小程序中起提示、选项的功能,当点击它时会弹出属于这个菜单的相应选项。使用vant组件库,将 dist 文件提前下载好然后保存到项目中。在小程序中调用组件库,并在正确引用就可以实现了菜单功能了。

一、下拉菜单

(1)在 json 中调用 van-tab 组件。

"usingComponents": {

"van-dropdown-menu": "/dist/dropdown-menu/index",

"van-dropdown-item": "/dist/dropdown-item/index",
}

表 1 json代码

(2)在 js 中对菜单进行设置。

option:设置菜单内容;

value:设置菜单内容的排列顺序。

Page({
data: {
option1: [
{ text: ' 白色; S', value: 0 },
{ text: ' 白色; M', value: 1 },
{ text: ' 白色; L', value: 2 }
],
value1: 0,
},
});

表 2 js代码

( 3 ) 在 wxml 中实现。

A ctive-color 设置选中状态颜色;

V alue设置排列顺序;

O ption菜单内容。

<van-dropdown-menu active-color="#ee0a24">

<van-dropdown-item value="{{ value1 }}" options="{{ option1 }}" />

</van-dropdown-menu>

表 3 wxml代码

图 1 效果图

微信小程序中的上拉、下拉菜单功能 

二、上拉菜单

(1)在 json 中调用 van-tab 组件。

"usingComponents": {

"van-action-sheet": "/dist/action-sheet/index" 

}

表 4 json代码

( 2 )在 js 中对菜单进行设置。

name:设置菜单选项;

subname : 设置副标题;

color:设置颜色。

Page({
data: {
show: false,
actions: [
{
name: ' 选项 '
},
{
name: ' 选项 '
},
{
name: ' 选项 ',
subname: ' 副文本 ',
openType: 'share'
}
]
},
onClose() {
this.setData({ show: false });
},
onSelect(event) {
console.log(event.detail);
}
});

表 5 js代码

( 3 ) 在 wxml 中实现。

<van-action-sheet>: 设置上来菜单;

bind:select="onSelect" : 选中选项时触发,禁用或加载状态下不会触发;

bind:close="onClose"  : 关闭时触发。

<van-action-sheet

show="{{ show }}"

actions="{{ actions }}"

bind:close="onClose"

bind:select="onSelect"
/>

表 6 wxml代码

微信小程序中的上拉、下拉菜单功能 

微信小程序中的上拉、下拉菜单功能 

图 2 效果图

结语

设置上下拉菜单可以使小程序界面简洁,在设置菜单的时候要注意对菜单内容和排列顺序设置正确。菜单跟其他的组件有一点点不同菜单一般是在 js 里面进行配置,可以根据需要在 js 中对菜单进行设置。菜单设置的标签有很多,需要理解记忆并运用。

到此这篇关于微信小程序中的上拉、下拉菜单功能的文章就介绍到这了,更多相关微信小程序上拉下拉菜单内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
Jquery iframe内部出滚动条
Feb 11 Javascript
Javascript 面向对象之重载
May 04 Javascript
StringTemplate遇见jQuery冲突的解决方法
Sep 22 Javascript
用js设置下拉框为只读的小技巧
Apr 10 Javascript
Javascript中的apply()方法浅析
Mar 15 Javascript
jQuery多条件筛选如何实现
Nov 04 Javascript
JS判断元素是否在数组内的实现代码
Mar 30 Javascript
Bootstrap表单布局样式代码
May 31 Javascript
node.js中module.exports与exports用法上的区别
Sep 02 Javascript
解决前端跨域问题方案汇总
Nov 20 Javascript
使用百度地图实现地图网格的示例
Feb 06 Javascript
Vue组件间数据传递的方式(3种)
Jul 13 Javascript
JavaScript实现公告栏上下滚动效果
Mar 13 #Javascript
使用vue实现HTML页面生成图片的方法
Mar 12 #Javascript
JavaScript实现随机点名器
Mar 25 #Javascript
JavaScript碰撞检测原理及其实现代码
Mar 12 #Javascript
JavaScript实现多个物体同时运动
Mar 12 #Javascript
基于javascript实现碰撞检测
Mar 12 #Javascript
jQuery使用ajax传递json对象到服务端及contentType的用法示例
Mar 12 #jQuery
You might like
深入了解 register_globals (附register_globals=off 网站打不开的解决方法)
2012/06/27 PHP
关于PHP定时发送服务的解决办法
2017/04/23 PHP
js计数器代码
2006/11/04 Javascript
ExtJS 刷新后如何默认选中刷新前最后一次选中的节点
2014/04/03 Javascript
Javascript中的作用域和上下文深入理解
2015/07/03 Javascript
jQuery同步提交示例代码
2015/12/12 Javascript
Bootstrap每天必学之折叠
2016/04/12 Javascript
浅谈JavaScript中小数和大整数的精度丢失
2016/05/31 Javascript
javascript输出AscII码扩展集中的字符方法
2016/12/26 Javascript
详解Vue.js基于$.ajax获取数据并与组件的data绑定
2017/05/26 Javascript
用javascript获取任意颜色的更亮或更暗颜色值示例代码
2017/07/21 Javascript
vue弹窗组件使用方法
2018/04/28 Javascript
使用Vue实现调用接口加载页面初始数据
2019/10/28 Javascript
Js参数RSA加密传输之jsencrypt.js的使用
2020/02/07 Javascript
Vue自定义多选组件使用详解
2020/09/08 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
[00:10]DOTA2 TI9勇士令状明日上线
2019/05/07 DOTA
Python下使用Psyco模块优化运行速度
2015/04/05 Python
python数据批量写入ScrolledText的优化方法
2018/10/11 Python
实例详解Python模块decimal
2019/06/26 Python
详解python和matlab的优势与区别
2019/06/28 Python
python将字符串转变成dict格式的实现
2019/11/18 Python
Python实现word2Vec model过程解析
2019/12/16 Python
django 取消csrf限制的实例
2020/03/13 Python
解决Python3.7.0 SSL低版本导致Pip无法使用问题
2020/09/03 Python
Pycharm编辑器功能之代码折叠效果的实现代码
2020/10/15 Python
英国和国际包裹递送:ParcelCompare
2019/08/26 全球购物
Engel & Bengel官网:婴儿推车、儿童房家具和婴儿设备
2019/12/28 全球购物
班主任工作年限证明
2014/01/12 职场文书
经典安踏广告词
2014/03/21 职场文书
幼儿评语大全
2014/04/30 职场文书
2014年学前班工作总结
2014/12/08 职场文书
党员剖析材料范文
2014/12/18 职场文书
2015年毕业生实习评语
2015/03/25 职场文书
100句人生哲理语录集锦:强者征服今天,懒汉坐等明天
2019/10/18 职场文书
Redis安装启动及常见数据类型
2021/04/14 Redis