微信小程序根据下拉列表发送指令

​ 前段时间在忙着考试和做项目,导致很久一段时间没更新,今天就浅浅更新一下,因为做项目需要下发很多命令,一开始是写了按钮事件,但是按键太多导致页面不美观简洁,后面想了一下用下拉列表来实现,这样界面就好看多了。

​ 然后发现微信小程序下拉列表只能自己自定义,微信开发者工具没有提供这个组件。网上查看了一下资料,我下面的代码是在另外一个博主的基础上扩展的。

可以直接点这个链接过去看他的博客https://blog.csdn.net/wolf6699/article/details/107915020?可以看到他做的是这样的界面
在这里插入图片描述

我在其基础实现这样的界面
在这里插入图片描述

​ 这里我着重讲解一下按钮怎么获取下拉列表的下标数组以及相应的指令文字。界面设计我就不讲太多,以免侵权。文章末尾我会放置源码链接,大家可以看源码学习。

​ 接下来我们看index.js里面的代码,首先,我们先记住初始数据里面的几个值,为下面调用做准备。selectData是列表数据,index是列表下标值,这里可以决定下拉列表收起时显示的一个值。

 data: {
    show:false,//控制下拉列表的显示隐藏,false隐藏、true显示
    selectData:['控制指令','开灯','关灯','打开风扇','关闭风扇','打开窗帘','关闭窗帘','打开加湿器','关闭加湿器'],//下拉列表的数据
    index:0,//选择的下拉列表下标
    Index:0
  },

在这里插入图片描述

接下来是按钮的事件函数。我在index.js定义的send函数就是它的事件函数。首先我们要怎么获取到下拉列表的下标呢?直接var index =index;是不行的,这里我们可以调用微信小程序提供的一个函数getCurrentPages(),可以看到这样我们可以获取当前页面的数据

在这里插入图片描述

接下来就是找到下标值和指令文字 ,select是下标值 postdata 是指令文字

  var select =sele[sele.length-1].data.index;
  var postdata=sele[sele.length-1].data.selectData[select];

下来列表那么多指令,一个一个写肯定很繁琐,这里用switch来判断,就很方便

 switch(select){
       case 1:console.log(postdata);break;   //打开灯
       case 2:console.log(postdata);break;// 关闭灯
       case 3:console.log(postdata);break;  //打开风扇
       case 4:console.log(postdata);break;//关闭风扇
       case 5:console.log(postdata);break;//打开窗帘
       case 6:console.log(postdata);break;//关闭窗帘
       case 7:console.log(postdata);break; //打开加湿器
       case 8:console.log(postdata);break; //关闭加湿器
       default: ;break;
     
    }     

打开微信开发者工具的调试器就可以看到我们发送的相关指令,要应用于实际应用只需要把console.log(postdata);改成你想要发送的函数就可以了

在这里插入图片描述

百度网盘链接
链接:https://pan.baidu.com/s/1_kqo9NbKZSmvpsCaUz2Upw
提取码:y4pw
在这里插入图片描述

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

帕法西尔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值