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


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 相关文章推荐
指定js可访问其它域名的cookie的方法
Sep 18 Javascript
再谈querySelector和querySelectorAll的区别与联系
Apr 20 Javascript
JS的document.all函数使用示例
Dec 30 Javascript
21个JavaScript事件(Events)属性汇总
Dec 02 Javascript
JavaScript中的对象的extensible属性介绍
Dec 30 Javascript
JS+CSS实现的蓝色table选项卡效果
Oct 08 Javascript
Jquery+Ajax+PHP+MySQL实现分类列表管理(上)
Oct 28 Javascript
Jquery中attr与prop的区别详解
May 27 jQuery
Vue 组件间的样式冲突污染
Aug 31 Javascript
JS获取数组中出现次数最多及第二多元素的方法
Oct 27 Javascript
最简单的JS实现json转csv的方法
Jan 10 Javascript
JavaScript代码压缩工具UglifyJS和Google Closure Compiler的基本用法
Apr 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
PHP安装问题
2006/10/09 PHP
PHP递归算法的详细示例分析
2013/02/19 PHP
php图片缩放实现方法
2014/02/20 PHP
Discuz批量替换帖子内容的方法(使用SQL更新数据库)
2014/06/23 PHP
thinkPHP3.2.2框架行为扩展及demo示例
2018/06/19 PHP
善用事件代理,警惕闭包的性能陷阱。
2011/01/20 Javascript
动态加载js的方法汇总
2015/02/13 Javascript
vue自动化表单实例分析
2018/05/06 Javascript
微信小程序适配iphoneX的实现方法
2018/09/18 Javascript
vue init webpack 建vue项目报错的解决方法
2018/09/29 Javascript
微信小程序之swiper滑动面板用法示例
2018/12/04 Javascript
Vue+Vuex实现自动登录的知识点详解
2020/03/04 Javascript
Vue实现导航栏菜单
2020/08/19 Javascript
Python字符串、元组、列表、字典互相转换的方法
2016/01/23 Python
Python匹配中文的正则表达式
2016/05/11 Python
Python中正则表达式详解
2017/05/17 Python
Pandas 对Dataframe结构排序的实现方法
2018/04/10 Python
pandas 实现将重复表格去重,并重新转换为表格的方法
2018/04/18 Python
对numpy Array [: ,] 的取值方法详解
2018/07/02 Python
基于python实现学生管理系统
2018/10/17 Python
用Python批量把文件复制到另一个文件夹的实现方法
2019/08/16 Python
python pyecharts 实现一个文件绘制多张图
2020/05/13 Python
Tensorflow卷积实现原理+手写python代码实现卷积教程
2020/05/22 Python
如何理解python中数字列表
2020/05/29 Python
python中Django文件上传方法详解
2020/08/05 Python
你的自行车健身专家:FaFit24
2016/11/16 全球购物
入党申请书自我鉴定
2013/10/12 职场文书
大学生求职简历的自我评价
2013/10/14 职场文书
师范毕业生自我鉴定
2014/01/15 职场文书
大学生第一学年自我鉴定2015
2014/09/28 职场文书
办公楼租房协议书范本
2014/11/25 职场文书
环境建议书
2015/02/04 职场文书
2015小学师德工作总结
2015/07/21 职场文书
基督教追悼会答谢词
2015/09/29 职场文书
python常见的占位符总结及用法
2021/07/02 Python
CSS中calc(100%-100px)不加空格不生效
2023/05/07 HTML / CSS