news 2026/9/26 11:08:14

案例 3.4 微信小程序数据和事件绑定(新增学生专业属性)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
案例 3.4 微信小程序数据和事件绑定(新增学生专业属性)

前言

本次案例《3.4 数据和事件绑定》,练习微信小程序数据绑定与事件绑定,在原有学生对象结构基础上,新增专业属性,实现页面展示学生信息,通过按钮事件修改数据。

一、知识点说明

  1. 数据绑定:WXML 使用{{ }}插值语法,把 js 里 data 中的数据渲染到页面。
  2. 事件绑定:bindtap绑定点击事件,触发 JS 函数修改 data 里的数据,页面自动更新。
  3. 修改要求:学生结构体新增major(专业)字段。

二、完整代码

pages/index/index.js
Page({ data: { // 学生对象,新增专业major属性 student:{ name:"林嘉恒", age:20, major:"软件工程" } }, // 点击事件:修改学生信息 changeInfo(){ this.setData({ "student.name":"小明", "student.age":21, "student.major":"计算机科学与技术" }) } })
pages/index/index.wxml
<view>学生信息展示</view> <view>姓名:{{student.name}}</view> <view>年龄:{{student.age}}</view> <view>专业:{{student.major}}</view> <button bindtap="changeInfo">点击修改学生信息</button>
pages/index/index.wxss(可选,美化页面)
view{ margin:10rpx; font-size:32rpx; } button{ margin-top:30rpx; }

三、运行效果

  1. 页面加载,自动渲染 data 中学生的姓名、年龄、专业。
  2. 点击按钮触发changeInfo事件。
  3. this.setData()修改 student 对象,页面视图自动刷新,专业同步更新。

原理:小程序是数据驱动,修改 data,视图自动更新,不需要手动操作 DOM。

四、核心要点总结

  1. {{变量名}}单向数据绑定,读取 data 数据渲染页面。
  2. bindtap用来绑定点击事件。
  3. 修改 data 必须使用this.setData(),直接赋值不会刷新页面。
  4. 对象属性写法:"student.major"可以单独修改对象里面的字段。

五、小结

本案例掌握小程序数据绑定与事件绑定,完成学生对象扩展,增加专业属性。理解小程序数据驱动思想,是小程序表单、列表开发的基础。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/26 11:06:48

基于SNMP与Modbus TCP的以太网温湿度变送器批量配置方案

1. 项目背景与核心需求拆解1.1 这个项目到底在解决什么问题做过机房动环、仓储环境监测或者实验室温湿度采集的人都有一个共同感受&#xff1a;单台设备调试不难&#xff0c;难的是几十上百台一起上。我去年接手一个项目&#xff0c;客户在全国有七个仓库&#xff0c;每个仓库少…

作者头像 李华
网站建设 2026/9/26 11:06:07

用 VSCode 插件 CodeSnap 生成漂亮代码截图,并配 TaoToken 统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/26 11:05:34

Cyber Weekly #74:用 TaoToken 统一 Key 打通 Cline 与 CC Switch 配置骨架

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华