问题描述

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

解决方案

上下拉菜单在微信小程序中起提示、选项的功能,当点击它时会弹出属于这个菜单的相应选项。使用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 中对菜单进行设置。菜单设置的标签有很多,需要理解记忆并运用。

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!