iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >微信小程序选择器怎么用
  • 834
分享到

微信小程序选择器怎么用

2023-06-26 08:06:22 834人浏览 独家记忆
摘要

这篇文章主要介绍“微信小程序选择器怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序选择器怎么用”文章能帮助大家解决问题。页面结构<!--pages/warn/index.wxml

这篇文章主要介绍“微信小程序选择器怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序选择器怎么用”文章能帮助大家解决问题。

页面结构

  1. <!--pages/warn/index.wxml-->

  2. <view class="container">

  3.     <view class="choose">

  4.         <view class="title">请选择故障类型</view>

  5.         <checkbox-group bindchange="checkboxChange" class="choose-grids">

  6.             <!-- itemsValue是data对象里定义的数组,item代表数组的每一项,此处语法为循环输出数组的每一项并渲染到每一个复选框。下面还有类似语法 -->

  7.             <block wx:for="{{itemsValue}}" wx:key="{{item}}">

  8.                 <view class="grid">

  9.                     <checkbox value="{{item.value}}" checked="{{item.checked}}" color="{{item.color}}" />{{item.value}}

  10.                 </view>

  11.             </block>

  12.         </checkbox-group>        

  13.     </view>

  14.     <view class="action">

  15.         <view class="title">拍摄单车周围环境,便于维修师傅找车</view>

  16.         <view class="action-photo">

  17.         <block wx:for="{{picUrls}}" wx:key="{{item}}" wx:index="{{index}}">

  18.             <image src="{{item}}"><icon type="cancel" data-index="{{index}}" color="red" size="18" class ="del" bindtap="delPic" /></image>

  19.         </block>

  20.             <text class="add" bindtap="bindCamera">{{actionText}}</text>

  21.         </view>

  22.         <view class="action-input">

  23.             <input bindinput="numberChange" name="number" placeholder="车牌号(车牌损坏不用填)" />

  24.             <input bindinput="descChange" name="desc" placeholder="备注" />            

  25.         </view>

  26.         <view class="action-submit">

  27.             <button class="submit-btn" type="default" loading="{{loading}}" bindtap="fORMSubmit" style="background-color: {{btnBGC}}">提交</button>

  28.         </view>

  29.     </view>

  30. </view>

复制代码


这里用到的组件和指令有:

  • 复选框组件 <checkbox-group>

  • 单个复选框<checkbox>

  • 输入框组件<input>

  • 按钮组件<button>

  • 图标组件<icon>

  • 循环指令:wx:for = "itemValues" wx:key="item" 表示 :

  • 循环一个数组itemValues,数组每一项为item,item是一个对象,具体渲染到模板可能是对象的某个key的value,如:{{item.value}}


组件什么的看看组件文档就知道了呗

页面样式

  1. .choose{

  2.         background-color: #fff;

  3. }

  4. .choose-grids{

  5.         display: flex;

  6.         flex-wrap: wrap;

  7.         justify-content: space-around;

  8.         padding: 50rpx;

  9. }

  10. .choose-grids .grid{

  11.         width: 45%;

  12.         height: 100rpx;

  13.         margin-top: 36rpx;

  14.         border-radius: 6rpx;

  15.         line-height: 100rpx;

  16.         text-align: center;

  17.         border: 2rpx solid #b9dd08;

  18. }

  19. .choose-grids .grid:first-child,

  20. .choose-grids .grid:nth-of-type(2){

  21.         margin-top: 0;

  22. }

  23. .action .action-photo{

  24.         background-color: #fff;

  25.         padding: 40rpx 0px 40rpx 50rpx;

  26. }

  27. .action .action-photo image{

  28.         position: relative;

  29.         display: inline-block;

  30.         width: 120rpx;

  31.         height: 120rpx;

  32.         overflow: visible;

  33.         margin-left: 25rpx;

  34. }

  35. .action .action-photo image icon.del{

  36.         display: block;

  37.         position: absolute;

  38.         top: -20rpx;

  39.         right: -20rpx;

  40. }

  41. .action .action-photo text.add{

  42.         display: inline-block;

  43.         width: 120rpx;

  44.         height: 120rpx;

  45.         line-height: 120rpx;

  46.         text-align: center;

  47.         font-size: 24rpx;

  48.         color: #ccc;

  49.         border: 2rpx dotted #ccc;

  50.         margin-left: 25rpx;

  51.         vertical-align: top;

  52. }

  53. .action .action-input{

  54.         padding-left: 50rpx;

  55.         margin-top: 30rpx;

  56.         background-color: #fff;

  57. }

  58. .action .action-input input{

  59.         width: 90%;

  60.         padding-top: 40rpx;

  61.         padding-bottom: 40rpx;

  62. }

  63. .action .action-input input:first-child{

  64.         border-bottom: 2rpx solid #ccc;

  65.         padding-bottom: 20rpx;

  66. }

  67. .action .action-input input:last-child{

  68.         padding-top: 20rpx;

  69. }

  70. .action .action-submit{

  71.         padding: 40rpx 40rpx;

  72.         background-color: #f2f2f2;

  73. }

复制代码


页面数据逻辑

  1. // pages/wallet/index.js

  2. Page({

  3.   data:{

  4.     // 故障车周围环境图路径数组

  5.     picUrls: [],

  6.     // 故障车编号和备注

  7.     inputValue: {

  8.       num: 0,

  9.       desc: ""

  10.     },

  11.     // 故障类型数组

  12.     checkboxValue: [],

  13.     // 选取图片提示

  14.     actionText: "拍照/相册",

  15.     // 提交按钮的背景色,未勾选类型时无颜色

  16.     btnBgc: "",

  17.     // 复选框的value,此处预定义,然后循环渲染到页面

  18.     itemsValue: [

  19.       {

  20.         checked: false,

  21.         value: "私私用",

  22.         color: "#b9dd08"

  23.       },

  24.       {

  25.         checked: false,

  26.         value: "车牌缺损",

  27.         color: "#b9dd08"

  28.       },

  29.       {

  30.         checked: false,

  31.         value: "轮胎坏了",

  32.         color: "#b9dd08"

  33.       },

  34.       {

  35.         checked: false,

  36.         value: "车锁坏了",

  37.         color: "#b9dd08"

  38.       },

  39.       {

  40.         checked: false,

  41.         value: "违规乱停",

  42.         color: "#b9dd08"

  43.       },

  44.       {

  45.         checked: false,

  46.         value: "密码不对",

  47.         color: "#b9dd08"

  48.       },

  49.       {

  50.         checked: false,

  51.         value: "刹车坏了",

  52.         color: "#b9dd08"

  53.       },

  54.       {

  55.         checked: false,

  56.         value: "其他故障",

  57.         color: "#b9dd08"

  58.       }

  59.     ]

  60.   },

  61. // 页面加载

  62.   onLoad:function(options){

  63.     wx.setNavigationBarTitle({

  64.       title: '报障维修'

  65.     })

  66.   },

  67. // 勾选故障类型,获取类型值存入checkboxValue

  68.   checkboxChange: function(e){

  69.     let _values = e.detail.value;

  70.     if(_values.length == 0){

  71.       this.setData({

  72.         btnBgc: ""

  73.       })

  74.     }else{

  75.       this.setData({

  76.         checkboxValue: _values,

  77.         btnBgc: "#b9dd08"

  78.       })

  79.     }   

  80.   },

  81. // 输入单车编号,存入inputValue

  82.   numberChange: function(e){

  83.     this.setData({

  84.       inputValue: {

  85.         num: e.detail.value,

  86.         desc: this.data.inputValue.desc

  87.       }

  88.     })

  89.   },

  90. // 输入备注,存入inputValue

  91.   descChange: function(e){

  92.     this.setData({

  93.       inputValue: {

  94.         num: this.data.inputValue.num,

  95.         desc: e.detail.value

  96.       }

  97.     })

  98.   },

  99. // 提交到服务器

  100.   formSubmit: function(e){

  101.     // 图片和故障类型必选

  102.     if(this.data.picUrls.length > 0 && this.data.checkboxValue.length> 0){

  103.       wx.request({

  104.         url: 'https://www.easy-mock.com/mock/59098d007a878d73716e966f/ofodata/msg',

  105.         data: {

  106.           // 如果是post请求就把这些数据传到服务器,这里用get请求模拟一下假装获得了服务器反馈

  107.           // picUrls: this.data.picUrls,

  108.           // inputValue: this.data.inputValue,

  109.           // checkboxValue: this.data.checkboxValue

  110.         },

  111.         method: 'get', //

  112.         // header: {}, // 设置请求的 header

  113.         success: function(res){

  114.           wx.showToast({

  115.             title: res.data.data.msg,

  116.             icon: 'success',

  117.             duration: 2000

  118.           })

  119.         }

  120.       })

  121.     }else{

  122.       wx.showModal({

  123.         title: "请填写反馈信息",

  124.         content: '看什么看,赶快填反馈信息,削你啊',

  125.         confirmText: "我我我填",

  126.         cancelText: "劳资不填",

  127.         success: (res) => {

  128.           if(res.confirm){

  129.             // 继续填

  130.           }else{

  131.             console.log("back")

  132.             wx.navigateBack({

  133.               delta: 1 // 回退前 delta(默认为1) 页面

  134.             })

  135.           }

  136.         }

  137.       })

  138.     }

  139.    

  140.   },

  141. // 选择故障车周围环境图 拍照或选择相册

  142.   bindCamera: function(){

  143.     wx.chooseImage({

  144.       count: 4,

  145.       sizeType: ['original', 'compressed'],

  146.       sourceType: ['album', 'camera'],

  147.       success: (res) => {

  148.         let tfps = res.tempFilePaths; // 图片本地路径

  149.         let _picUrls = this.data.picUrls;

  150.         for(let item of tfps){

  151.           _picUrls.push(item);

  152.           this.setData({

  153.             picUrls: _picUrls,

  154.             actionText: "+"

  155.           });

  156.         }

  157.       }

  158.     })

  159.   },

  160. // 删除选择的故障车周围环境图

  161.   delPic: function(e){

  162.     let index = e.target.dataset.index;

  163.     let _picUrls = this.data.picUrls;

  164.     _picUrls.splice(index,1);

  165.     this.setData({

  166.       picUrls: _picUrls

  167.     })

  168.   }

  169. })

关于“微信小程序选择器怎么用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网精选频道,小编每天都会为大家更新不同的知识点。

--结束END--

本文标题: 微信小程序选择器怎么用

本文链接: https://www.lsjlt.com/news/308618.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 微信小程序选择器怎么用
    这篇文章主要介绍“微信小程序选择器怎么用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序选择器怎么用”文章能帮助大家解决问题。页面结构<!--pages/warn/index.wxml...
    99+
    2023-06-26
  • 微信小程序switch开关选择器怎么用
    这篇文章将为大家详细讲解有关微信小程序switch开关选择器怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体内容如下效果图WXML<view cl...
    99+
    2022-10-19
  • 微信小程序picker多列选择器怎么用
    本篇内容主要讲解“微信小程序picker多列选择器怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微信小程序picker多列选择器怎么用”吧!vue-next-admin,这是基于 vue3...
    99+
    2023-06-08
  • 微信小程序picker选择器怎么实现
    本篇内容主要讲解“微信小程序picker选择器怎么实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“微信小程序picker选择器怎么实现”吧!picker选择器分为三种,普通选择器,时间选择器,...
    99+
    2023-06-26
  • 微信小程序多项选择器checkbox怎么使用
    这篇文章主要介绍“微信小程序多项选择器checkbox怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序多项选择器checkbox怎么使用”文章能帮助大家解决问题。第一的话就是我们的相...
    99+
    2023-07-02
  • 微信小程序选择器组件picker怎么使用
    本篇内容介绍了“微信小程序选择器组件picker怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!picker组件的定义picker组件...
    99+
    2023-07-05
  • 微信小程序多项选择器checkbox
    本文实例为大家分享了微信小程序多项选择器checkbox的具体代码,供大家参考,具体内容如下 第一的话就是我们的相关的布局文件: <view class="container...
    99+
    2022-11-13
  • 微信小程序实现课程选择器
    本文实例为大家分享了微信小程序实现课程选择器的具体代码,供大家参考,具体内容如下 话不多说,直接上效果图 代码如下 wxml <view class="urg_input"&...
    99+
    2022-11-13
  • 微信小程序开发框架怎么选择
    这篇“微信小程序开发框架怎么选择 ”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序开发框架怎么选择 ”文章吧。从数据...
    99+
    2023-06-26
  • 微信小程序怎么自定义滚动选择器
    这篇文章主要介绍“微信小程序怎么自定义滚动选择器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序怎么自定义滚动选择器”文章能帮助大家解决问题。js:// pages/xuanzeq...
    99+
    2023-07-02
  • 微信小程序实现多列选择器
    本文实例为大家分享了微信小程序实现多列选择器的具体代码,供大家参考,具体内容如下 <picker class="picks" mode="multiSelector" bind...
    99+
    2022-11-13
  • 微信小程序的五种选择器是什么
    本文小编为大家详细介绍“微信小程序的五种选择器是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“微信小程序的五种选择器是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。picker从底部弹起的滚动选择器,现...
    99+
    2023-06-26
  • 微信小程序日期选择器使用详解
    本文实例为大家分享了微信小程序日期选择器的具体代码,供大家参考,具体内容如下 需求:在小程序开发中,时常会遇到日期选择器、时间选择器或者地区选择器来进行选择的功能。往往设计图上面并不...
    99+
    2022-11-13
  • 微信小程序日期选择器如何使用
    本文小编为大家详细介绍“微信小程序日期选择器如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“微信小程序日期选择器如何使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。需求:在小程序开发中,时常会遇到日期选...
    99+
    2023-07-02
  • 微信小程序自定义日期选择器
    日期选择器是我们在写项目的过程中经常遇到的,有需要标题的选择器,也有不需要标题的选择器 今天给大家带来一个自定义的时间选择器,废话不多说,直接上代码 第一步:先创建一个picker的...
    99+
    2022-11-12
  • 微信小程序picker多列选择器(mode = multiSelector)
    目录一、效果图(多列)二、普通选择器:mode = selector、多列选择器:mode = multiSelector三、app.json四、picker.wxml五、picke...
    99+
    2022-11-12
  • 微信小程序自定义滚动选择器
    本文实例为大家分享了微信小程序自定义滚动选择器的具体代码,供大家参考,具体内容如下 最近项目里有个需求要做个滚动选择器,在网上找了半天也没找到合适的demo,没办法只能发挥我的聪明才...
    99+
    2022-11-13
  • 微信小程序实现时间选择
    本文实例为大家分享了微信小程序实现时间选择的具体代码,供大家参考,具体内容如下  xml:  <view class="day-check" style=...
    99+
    2022-11-13
  • 微信小程序自定义多列选择器使用
    本文实例为大家分享了微信小程序自定义多列选择器的具体代码,供大家参考,具体内容如下 项目需要,需要实现一个多列选择器,在用户确定之前,无论列表如何转,都不会影响已确定值的显示,只要用...
    99+
    2022-11-13
  • 微信小程序城市选择器如何实现
    这篇文章主要讲解了“微信小程序城市选择器如何实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“微信小程序城市选择器如何实现”吧!城市选择器 region//index.wxml<pic...
    99+
    2023-06-26
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作