【微信小程序】—— wxml中使用wx:for时,修改页面中data内数组中的单个值,实现选中效果

微信小程序学习笔记 ( 小程序页面学习 六 WXML-列表渲染 基本食用方法) 视图层   框架的视图层由 WXML 与 WXSS 编写,由组件来进行展示。   将逻辑层的数据反应成视图,同时将视图层的事件发送给逻辑层。   WXML(WeiXin Markup language) 用于描述页面的结构。   WXS(WeiXin Script) 是小程序的 阅读详情

这个不算坑,但是为了保证一致性。。题目就这样吧嘿嘿~

未点击时:

点击后:

 

再次点击又会隐藏,只做了第一个,其他相同


前端代码:

使用wx:for,给image的src属性用了三项运算符,当我把isSelect改成true时,前面的小图标换了一下,隐藏的模块用的hidden

wxml:

<!--page/me/setUp/setUp.wxml-->
<view>
  <!-- 修改信息模块 -->
  <view>
    <!--横条-->
    <view  wx:for="{{operation}}" wx:key="text"">
      <view class='stripes' bindtap="choose" data-id="{{item.id}}>
        <image src='{{item.isSelect ? "../../../image/arrow.png": "../../../image/arrowright.png"}}' class='small-icon'></image>
        <text class='stripes-text'>{{item.text}}</text>
      </view>
      <!-- 隐藏模块,点击后显示 -->
      <view hidden='{{!(item.isSelect && item.id == 0)}}'>
        这是隐藏的模块
      </view>

    </view>
  </view>
  <!-- 确认修改 -->
  <!-- <view wx:if='{{user.isLogin}}'>
    <button type='warn' class='log-out' bindtap='logOut'>确认修改</button>
  </view> -->

</view>

wxss:

/* page/me/setUp/setUp.wxss */
/* 横条 */
.stripes {
  display: flex;
  flex-direction: row;
  align-items: center;
  border-bottom: 1rpx solid #eee;
  width: 100%;
  height: 100rpx;
}
/* 横条的文本 */
.stripes-text {
  font-size: 32rpx;
  color: rgb(87, 87, 87);
  margin-left: 50rpx;
}


/* 退出登录按钮 */
.log-out {
  margin-top: 350rpx;
  width: 90%;
}

/* 前面的小图标 */
.small-icon {
  width: 50rpx;
  height: 50rpx;
  margin-left: 30rpx;
}

逻辑: 

我页面中的data是这样的:

  data: {
    operation: [{
      id: 0,
      text: "实名认证",
      isSelect: false
    }, {
      id: 1,
      text: "修改密码",
      isSelect: false
    }, {
      id: 2,
      text: "修改手机号",
      isSelect: false
    }]
  },

下面来看js逻辑:

这里我主要想说的就是修改data中operation数组的单个值,拼串的方式拼出isSelect,然后这里每当点击的时候,都会获取一个id,id就是数组的下标,在setData中每次都赋相反的值。

//选择分类列表
  choose: function(e) {
    var that = this;
    //修改小图标的逻辑
    var id = e.currentTarget.dataset.id;
    var isSelect = 'operation[' + id + '].isSelect';
    that.setData({
      [isSelect]: !that.data.operation[id].isSelect
    });
    
    switch (id) {
      case 0:
        {
          console.log("实名认证");
          // wx.navigateTo({
          //   url: "../login/login",
          // });
          break;
        }
      case 1:
        {
          console.log("修改密码");
          // wx.navigateTo({
          //   url: "serch1/serch1",
          // })
          break;
        }
      case 2:
        {
          console.log("修改手机号");
          // wx.navigateTo({
          //   url: "setUp/setUp",
          // })
          break;
        }
    }

  },

 

 

 


谢谢你看到这里!写作仓促,有疏漏之处还请评论指正,共同探讨进步!


 

【微信小程序】--bindtap参数传递,配合wx.previewImage实现多张缩略图预览 本文为为原创博客,如需转载请注明出处 问题描述: 如何在在微信小程序实现多张缩略图预览? 话不多说直接上结果 预览小程序wxml中的多张缩略图 从本地的相册预览图片,类似微信发朋友圈时的预览效果。 尚未实现!!!未完待续!!多包涵!! 上代码从wxml预览图片 <view class="right imgs" > <view class="im 阅读详情

相关推荐

微信小程序开发实战&电影小程序——阅读页面轮播图-新闻列表页面构建-数据绑定

微信小程序开发——阅读页面轮播图-新闻列表页面构建-数据绑定开发教程

第九程序官方博客 1849

【微信小程序】WXML模板语法 —— 数据绑定

黑马前端小程序学习笔记

JPengp的博客 814

Sinutrain下载安装与开启OPC UA---kalrry

Sinutrain 开启 OPC UA 本教程只适用于版本,其他版本配置目录有所改变建议安装到默认路径,否则后期修改路径时候容易忽略细节本教程提供安装包为官方包,网上有些非官方包安装后容易出现授权问题,比如授权管理器无法启动,官方技术会建议你重装系统,很多时候是因为安装包非官方包在首次安装前,建议重启一遍系统。

kalrry 1万+

【微信小程序】基础篇 -- WXML 模板语法 - 列表渲染 -- wx:for & wx:key(十二)

大家好,又见面了,我是夜阑的狗🐶,本文是专栏【微信小程序开发教程】专栏的第12篇文章;今天开始学习微信小程序的第八天💖💖💖,开启新的征程,记录最美好的时刻🎉,每天进步一点点。不知不觉已经学习微信小程序八天了,估计大佬们一天就学完这些内容了吧,我还在慢吞吞的学完,然后在看官方文档总结写写文章。 此专栏是我是夜阑的狗微信小程序开发过程的总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。🌹 🌹 🌹也欢迎你,关注我。

JMFive的博客 1万+

Mimics 21.0软件学习笔记(一)基本操作

Materialise Mimics 21.0打开工程窗口化Thresholding 二值化Region growing区域增长创建一个3D表示,并显示股骨头从髋臼中区分出来,并单独为股骨头建立3D模型 打开工程 Opening the Project 窗口化 Windowing 二值化 Thresholding 区域增长 Region Growing 建立 3D 表示 Creating a 3D representation 显示 3D 表示 Displaying a 3D representation

qq_35495464的博客 4万+

信贷风控实战指南:Vintage分析表从数据建模到风险洞察

本文是一份信贷风控实战指南,详细阐述了Vintage分析从数据建模到风险洞察的全流程。文章深入解析了Vintage分析作为信贷资产“体检报告”的核心价值,并提供了从借据表与还款计划表设计、账龄计算、逾期口径判定到风险暴露计算与最终可视化透视的完整SQL实现方案,旨在帮助风控从业者构建精准的风险监控体系。

nft7creator的博客 321

微信小程序开发笔记

position定位方式 position允许对元素进行定位。 https://www.jianshu.com/p/993737730753 catchtap与bindtap的区别: bindtap是冒泡的,即子view响应后父view也会响应。 catchtap是非冒泡的,即子view响应后父view不会响应。 点击view时的传值方式: 通过data-xxx的方式传值。如下: 其中data-x...

wh义华的专栏 464

STM32H7串口DMA避坑指南:如何解决RT-Thread默认驱动不支持的问题

本文针对STM32H7在RT-Thread系统中启用串口DMA时遇到的驱动不支持问题,提供了详细的解决方案。通过分析问题根源,指导修改驱动代码以适配H7的DMA Stream架构,并调整内存配置确保DMA可访问性,最终实现稳定高效的串口DMA通信。

weixin_29179311的博客 424

微信小程序分页效果实现

index.js // pages/bianmin/bianmin.js var p = 0 var GetList = function (that) { wx.request({ url: url, method: "POST", data: { page: p }, header: { 'content-type': 'a

阵雨的博客 1万+

【报错解决】OpenClaw 报错 `openclaw: command not found`:全局命令未加入系统 PATH 的深度排查与修复指南

在国产AI工具链开发中,OpenClaw作为关键命令行工具常出现command not found报错。本文深度分析该问题的根源——Linux环境变量PATH未包含用户级安装目录(~/.local/bin)。通过四种解决方案(临时PATH修改、永久配置、软链接、虚拟环境处理)和排错Checklist,揭示"命令存在却找不到"的本质是路径配置问题,特别适用于Docker/国产Linux/非root环境。文中强调理解Linux工具链机制对国产AI开发的重要性,并指出这是开发者掌握环境

博客 5383

070、人脸AE实战:基于人脸检测的亮度优先与背光补偿算法

本文分享了基于人脸检测的亮度优先与背光补偿算法的实战经验。针对逆光自拍场景下人脸过曝问题,作者提出了动态平衡方案: 通过内缩20%的人脸核心区域提取亮度,避免背景干扰 创新性地采用"亮度差+置信度"的背光判定机制 设计动态权重分配策略,人脸权重可在30%-70%间调整 引入平滑处理防止亮度跳变,补偿增益限制在1.5倍以内 关键点在于:不是简单提亮人脸,而是通过分析人脸与背景亮度差,在80-110目标亮度范围内动态调整,实现自然的人脸曝光效果。算法已在实际项目中验证,解决了传统AE在逆光场景下的失效问题。

zzfmlxs的博客 34

小程序开发:wxml语法 {{}},if条件判断,for循环,未完待续。。。。

在js代码中data的数据是可以打印在wxml中的,并且是双向绑定的; <view> {{ name }} </view> data() { name: "kkkk" } if 条件判断: 点击查看文档详情 <view wx:if="{{1>2}}"> {{ name }} </view> <view wx:elif="{{2<3}}"> {{ name }} </view> <view wx:else> 隐

weixin_44684357的博客 1645

电子电器架构 -- 汽车零部件DV试验与PV试验的定义及关键差异

电子电器架构 -- 汽车零部件DV试验与PV试验的定义及关键差异

Soly_kun的博客 734

【微信小程序】wx:for的使用

在小程序的开发过程中,经常会用到在前端页面循环打印一个数组或者对象的数据,这样的话就需要用wx:for来实现。 一般情况下,小程序的utils这个文件夹下,我们可以把本地的数据写进去,封装成.js文件,提供对外暴露的接口,然后读取本地数据,这些在上一篇博客中有详细介绍。我们最后说到写好的本地数据可以另一个页面读取: var fileData = require('../../utils/dat

走在冷风中的博客 9658

063.CI/CD for ML:给YOLO项目装上自动化流水线

本文分享了为YOLO目标检测项目搭建CI/CD流水线的实践经验。作者通过手动调试模型导出问题的经历,意识到重复验证工作比模型改进更耗时,提出需要自动化解决方案。文章详细介绍了四阶段流水线设计:1)代码质量检查;2)快速训练验证;3)推理性能基准测试;4)模型注册部署。同时总结了环境不一致、GPU资源争抢等常见问题及解决方案,建议从简单规则开始逐步完善,强调模型版本管理的重要性。实施后不仅提高了效率,还促使团队形成更规范的开发习惯。

2603_95664987的博客 235

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

微信小程序(8):WXML数据绑定 条件渲染 列表渲染

文章目录一、数据绑定二、条件渲染三、列表渲染 一、数据绑定 WXML 中的动态数据均来自对应 Page 的 data。 先在 index.js 文件里敲入 page,弹出以下代码: Page({ /** * 页面的初始数据 */ data: { }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { }, /** * 生命周期函数--监听页面初次渲染完成 */

小R.的博客 2237

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

微信小程序----关于变量对象data 和 前端wxml取后台js变量值

(一)页面变量对象data 对象data 有两个方面用途 第一,前端wxml的数据渲染是通过设置此对象中定义的变量进行关联展现的 第二,定义JS页面中的页面局部变量,使其整个页面中可使用或调用 对象data定义的变量支持各种数据类型,string,int,[],{} 第一.wxml数据渲染,只要通过设置data值(this.setData({...}))即可 如: w...

arsart32324的博客 752

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

微信小程序开发笔记③——页面弹性布局、数据绑定和数组的使用

弹性布局 flex-drection 弹性容器的方向 <view class='flex-container'> <view class='view-size bg-red'></view> <view class='view-size bg-green'></view> <view class='view-size ...

ww0peo的博客 419

微信小程序 使用wxml2canvas插件生成图片部分问题记录

文字无法加粗 css样式添加font-weight:bold,但是生成的图片字体未加粗。检查插件源码,发现bold被替换成了700(未设置字重的为400) 解决办法:这里在源码_drawText方法的红框位置,直接将700替换回bold,插件就能正常绘制出加粗效果了。 绘制结果错乱(部分内容没绘制) 原因1:网络图片 首先,网络图片的域名,必须在小程序设置的"downloadFile合法域名"内,否则绘制不出图片,且导致该image元素后的所有元素都没有绘制(插件不报错) 其次,网络图片需要提前下载到缓

qq_15197419的博客 4417

学微信小程序的第二天:关于数组循环,wx:for的小问题

今天学到用wx:for来进行列表循环 先是在js文件中创建了list列表,如图: 然后在.wxml中写了以下: 结果编译运行之后并没有出现想象中的效果 后来发现一个小细节,如果要显示效果的话,在.js中的list属性应该写在data里面,如图: 紧接着编译就有效果了 接下来是怎么消除这个警告: 加上wx:key的绑定,如图: wx:key的绑定值随便写也不会报错,但后续可能会引发问题。 ...

Ricardo_Sl的博客 493

零基础微信小程序开发——WXML 模板语法之数据绑定(保姆级教程+超详细)

在小程序开发中,WXML模板语法用于描述页面的结构。为了将数据动态地展示在页面上,就需要使用数据绑定。数据绑定的基本原则是“在data中定义数据,在WXML中使用数据”。

小白的大数据之旅的博客 1009

wxml 判断 小程序_微信小程序学习笔记 (小程序页面学习 五 WXML-数据绑定 基本食用方法)...

目录结构 页面学习视图层框架的视图层由 WXML 与 WXSS 编写,由组件来进行展示。将逻辑层的数据反应成视图,同时将视图层的事件发送给逻辑层。WXML(WeiXin Markup language) 用于描述页面的结构。WXS(WeiXin Script) 是小程序的一套脚本语言,结合 WXML,可以构建出页面的结构。WXSS(WeiXin Style Sheet) 用于描述页面的样式。组件...

weixin_26782843的博客 326

微信小程序(事件系统-wxml语法-生命周期-小程序API)

本文摘要: 微信小程序开发全攻略涵盖核心知识点: 基础组件:button按钮类型(default/primary/warn)及事件绑定方式(bind/catch/mut-bind) 数据交互:Mustache语法数据绑定、setData更新规则(对象/数组操作技巧) 生命周期:App/Page/Component三级生命周期执行顺序及场景应用 路由系统:5种导航方式对比(navigateTo/redirectTo/switchTab/reLaunch/navigateBack) 网络请求:wx.reques

2501_93485775的博客 261

微信小程序 笔记汇总(1)

1、小程序开发官方技术文档 https://developers.weixin.qq.com/miniprogram/dev/framework/ 2、关于变量对象data 和 前端wxml取后台js变量值 2.1 页面变量对象data 对象data 有两个方面用途 第一,前端wxml的数据渲染是通过设置此对象中定义的变量进行关联展现的 第二,定义JS页面中的页面局部变量,使其整个页面中可使用或调...

吾行远方 786

css计算函数 scalc 微信小程序_微信小程序传值以及获取值方法的详解

微信小程序传值以及获取值方法的详解微信小程序传值以及获取值方法,传值有两种方法,对应也有获取值得方法,1、设置id的方法标识跳转后传递的参数值;2、通过使用data - xxxx 的方法来标识要传递的值微信小程序设置id的方法标识来传值在要跳转的item处,设置一个id并给当前的id赋值上对应的key值,比如一部电影的id(后面带着id去下一个页面查询,详细信息)如:后我们在js的bindtap的...

weixin_39881958的博客 726
上一篇: 【微信小程序】—— 如何在app.js 和其他页面中更改globalData的值
下一篇: 【微信小程序】—— 为什么上拉加载后会返回顶部
LimonSea
博客等级 码龄9年 73粉丝 104原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值