微信小程序案例3.4 数据和事件绑定一、实验目的掌握微信小程序Mustache双大括号{{}}单向数据绑定语法。掌握普通变量、对象、数组的数据绑定写法。掌握事件绑定bind:tap实现按钮点击事件。掌握this.setData()方法修改逻辑层data数据并更新视图页面。在student对象中新增major专业属性页面展示专业信息点击按钮同步更新专业。二、实验环境微信开发者工具新建空白小程序项目不使用云服务、不使用模板。三、实验原理Mustache语法单向数据绑定使用{{ }}数据从js逻辑层流向wxml视图层只能单向传递。对象绑定语法{{对象名.属性名}}数组绑定语法{{数组[下标]}}bind:tap绑定按钮点击事件触发js中定义的事件处理函数。this.setData()是小程序专门用来更新页面数据的API修改data里面的数据将数据发送到视图层驱动页面刷新直接赋值this.data.xxx页面不会更新。四、实验内容本案例实现多种数据绑定效果算术运算绑定、对象绑定、数组绑定。页面展示学生学号、姓名、生日、新增专业字段。点击【修改绑定数据】按钮调用modify事件函数执行setData页面全部数据同步改变。1.index.wxml代码scroll-viewclassscrollareascroll-ytypelistviewclassboxviewclasstitle各种类型的数据绑定示例/viewviewclasstxt-styleview算术运算绑定{{a}}{{b}}{{c}}{{a b c}}/viewview对象绑定--学号{{student.stuId}}/viewview对象绑定--姓名{{student.name}}/viewview对象绑定--生日{{student.birthDay}}/viewview对象绑定--专业{{student.major}}/viewview数组绑定--array[0]{{array[0]}}/viewview数组绑定--array[1]{{array[1]}}/viewview数组绑定--array[2]{{array[2]}}/view/viewbuttontypeprimarybind:tapmodify修改绑定数据/button/view/scroll-view2.index.js代码Page({data:{a:10,b:20,c:30,student:{stuId:20250822,name:张三,birthDay:2005-09-01,major:软件工程和大数据},array:[2023,2024,2025]},modify(){this.setData({a:100,b:200,c:300,student:{stuId:20220123,name:李四,birthDay:2002-12-10,major:计算机科学与技术},array:[2018,2019,2020]})}})3.index.wxsspage{height:100vh;display:flex;flex-direction:column;}.scrollarea{flex:1;overflow-y:hidden;}.txt-style{font-size:40rpx;line-height:2em;margin-left:20rpx;}4.app.wxss.box{margin:20rpx;padding:20rpx;border:2rpx solid silver;}.title{font-size:40rpx;font-weight:bolder;text-align:center;margin-bottom:30rpx;color:red;}5.app.json{pages:[pages/index/index],window:{navigationBarTitleText:数据和事件绑定,navigationBarTextStyle:black},style:v2,sitemapLocation:sitemap.json}五、运行效果初始页面算术运算10203060学生信息张三专业软件工程和大数据数组内容2023、2024、2025。点击【修改绑定数据】按钮触发modify事件页面数据全部刷新。算术运算变成100200300600学生变为修改后的内容专业变为修改后的内容数组更新为2018、2019、2020。六、实验总结wxml使用{{}}Mustache语法实现单向数据绑定数据只能从js逻辑层流向页面视图。对象取值使用对象.属性名数组取值使用数组[下标]。通过bind:tap绑定按钮点击事件执行js事件处理函数。修改页面data数据必须使用this.setData()直接修改this.data页面不会刷新渲染。完成作业拓展给student对象增加major专业属性初始化和setData更新时都可以正常渲染到页面。
企业数字化 ERP 产品动态
相关推荐
Qt与FFmpeg的RTSP取流播放器实战指南 简介:面向 Qt 与流媒体开发者的 RTSP 取流工程,基于 FFmpeg 完成视频流拉取、解码与界面显示,适合需要快速实现播放器或实时监控预览的读者。压缩包共 158 个文件,约 18.78MB,包含可编译的 Qt 工程(.pro/.c… · 2026/9/23 15:39:35
FPGA实现SHA256:并行流水线设计与百倍吞吐优化 简介:本资源是一份面向CTF安全竞赛选手与密码学硬件加速学习者的深度技术文档,聚焦FPGA实现SHA256哈希计算的高性能优化方案,解决传统CPU/GPU在区块链挖矿、数据完整性校验等场景中吞吐量低、功耗高的瓶颈问题。文档为单文件PDF(4… · 2026/9/23 15:39:34
MATLAB手写CNN:从零实现卷积前向与反向传播 简介:本资源是一份面向高校本科生的深度学习入门实践项目,聚焦手写数字图像识别这一经典计算机视觉任务,特别适合作为毕业设计或课程设计选题。项目基于MATLAB平台完整实现卷积神经网络(CNN),涵盖MNIST数据… · 2026/9/23 16:23:25
BERT微调实现多标签文本分类的Keras实战指南 简介:基于Keras与Keras-bert的文本多标签分类项目包,面向自然语言处理实战场景,通过微调BERT完成多标签分类,并以2020语言与智能技术竞赛事件抽取任务作为数据样例,适合需要快速落地预训练模型的开发者和研究者。压缩包… · 2026/9/23 16:23:19
BERT+BiLSTM+CRF中文命名实体识别实战:从数据预处理到模型部署 简介:面向中文命名实体识别(NER)的Python项目源码,以BERTBiLSTMCRF为核心框架,同时提供BiLSTMCRF、IDCNNCRF等多种对比实现,覆盖数据预处理、模型训练与评估全流程。压缩包共58个文件,以16个Pyt… · 2026/9/23 16:23:19
确定性网络白皮书拆解:FlexE、TSN、DetNet 技术选型与落地避坑指南 简介:《未来网络白皮书:确定性网络技术体系》由网络通信与安全紫金山实验室联合华为、北京邮电大学等单位编写,面向网络通信研究者、工业互联网从业者及高校师生,系统解答传统“尽力而为”互联网难以满足智能制造、远程医疗、自动… · 2026/9/23 16:23:12
Goemon64Recomp版本发布状态解析:静态重编译工程的产品化之路 1. 项目背景与核心定位拆解1.1 这个项目到底在做什么Goemon64Recomp 是一个围绕经典 N64 平台游戏《大盗五右卫门》系列(Mystical Ninja 系列)进行静态重编译(Static Recompilation)的工程。它的核心目标不是模拟器式的逐指令解释… · 2026/9/23 16:23:12
3招搞定手机怎么下载微信面试难题实战项目解析 3招搞定手机怎么下载微信面试难题实战项目解析 面试被问“手机怎么下载微信”背后的原理,90%的人答不上来。别笑,这看似弱智的问题,实则是考察你对移动应用分发机制、安全校验及网络协议理解的试金石。我带过不少校招新人,他们背了八股文,却连一个A… · 2026/9/23 0:00:03
你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 面试被问“高并发下如何保证消息不丢失”,你张口就是“用Redis”,结果面试官追问“如果Redis宕机了怎么办”,你瞬间卡壳。这种场景太常见了,很多新手在背八股文时,只记住了技术名词… · 2026/9/23 0:00:29