【小程序】数据和事件绑定和数据同步传参

简介: 【小程序】数据和事件绑定和数据同步传参

数据绑定

1. 数据绑定的基本原则

在 data 中定义数据

在 WXML 中使用数据

2. 在 data 中定义页面的数据

在页面对应的 .js 文件中,把数据定义到 data 对象中即可:

61cad2768c3b403b99cc5c3fd690b493.png

3. Mustache 语法的格式

把data中的数据绑定到页面中渲染,使用 Mustache 语法(双大括号)将变量包起来即可。语法式为:


cfea8121f6bb4fb38a53d34bead2173f.png


4. Mustache 语法的应用场景

Mustache 语法的主要应用场景如下:  

绑定内容  

绑定属性  

运算(三元运算、算术运算等)

5. 动态绑定内容

页面的数据如下:


aaa4a666a0d14afd8c22813fdcc68e56.png


页面的结构如下:

8b55c3171de844f48a6df98e0a43a92b.png

6. 动态绑定属性

页面的数据如下:

1fbb341617de4b17b00c7fb586210084.png

页面的结构如下:

714d0a33c688480386af123e8aeafbd9.png


7. 三元运算

页面的数据如下:


fd00c8d8cf984be3957457e69227198c.png

页面的结构如下:

c1933e227ddf4e74b21e110ef5eb476d.png


8. 算数运算

页面的数据如下:

ebdf210836e74405a7192c9a965e3186.png

页面的结构如下:

f87db1166a2148e2ba6752d8e2d47afc.png

事件绑定

1. 什么是事件

事件是渲染层到逻辑层的通讯方式。通过事件可以将用户在渲染层产生的行为,反馈到逻辑层进行业务的处理。


d25419c3de2f4f2692bd94db090bcba5.png

2. 小程序中常用的事件

b6b7424e791e48b390e6490420e7f23d.png

3. 事件对象的属性列表

当事件回调触发的时候,会收到一个事件对象 event,它的详细属性如下表所示:


3bebb174c2b64972ad0094d2c002ed9d.png

4. target 和 currentTarget 的区别

target 是触发该事件的源头组件,而 currentTarget 则是当前事件所绑定的组件。举例如下:

4cd24531913c4b3e9acfef7a1dbe3957.png

点击内部的按钮时,点击事件以冒泡的方式向外扩散,也会触发外层 view 的 tap 事件处理函数。


此时,对于外层的 view 来说:e.target 指向的是触发事件的源头组件,因此,e.target 是内部的按钮组件e.currentTarget 指向的是当前正在触发事件的那个组件,因此,e.currentTarget 是当前的 view 组件  


5. bindtap 的语法格式

在小程序中,不存在 HTML 中的 onclick 鼠标点击事件,而是通过 tap 事件来响应用户的触摸行为。 通过 bindtap,可以为组件绑定 tap 触摸事件,语法如下:

ef8a281f0bc74531b06f342bf4f2ca28.png

在页面的 .js 文件中定义对应的事件处理函数,事件参数通过形参 event(一般简写成 e) 来接收:

54e7e4f22b15421ea40292e59b7b7b2d.png

6. 在事件处理函数中为 data 中的数据赋值

通过调用 this.setData(dataObject) 方法,可以给页面 data 中的数据重新赋值,示例如下:

ff618bf7487c45589723ba3b4fe03cac.png


7. 事件传参

小程序中的事件传参比较特殊,不能在绑定事件的同时为事件处理函数传递参数。例如,下面的代码将不能正常工作:


f185bee3507141f1a2f28b7c34576aa8.png

因为小程序会把 bindtap 的属性值,统一当作事件名称来处理,相当于要调用一个名称为btnHandler(123) 的事件处理函数。  

可以为组件提供 data-* 自定义属性传参,其中 * 代表的是参数的名字,示例代码如下:

76ddb1f6cbe94dcaacda823d42dc0207.png

最终:  info 会被解析为参数的名字  数值 2 会被解析为参数的值

在事件处理函数中,通过 event.target.dataset.参数名 即可获取到具体参数的值,示例代码如下:image.png

8. bindinput 的语法格式

在小程序中,通过 input 事件来响应文本框的输入事件,语法格式如下: 通过 bindinput,可以为

文本框绑定输入事件:

image.png

在页面的 .js 文件中定义事件处理函数:

b5e56967fbc24670a6459abca51ebf3c.png


9. 实现文本框和 data 之间的数据同步

实现步骤:

定义数据

渲染结构

美化样式

绑定 input 事件处理函数

定义数据:


b0af1019ba49483aafc8bdd133b7cb3d.png

渲染结构:

ec1162aaefe141bfa83cb3918ef28431.png

美化样式:

61d697b5a51441e29fa0c272fd68ddba.png

绑定 input 事件处理函数:

825ea4474009428a9ed9337f232ce9e9.png




相关文章
|
2月前
|
存储 安全 小程序
在微信小程序中使用 Vant 时如何确保数据的安全?
在微信小程序中使用 Vant 时如何确保数据的安全?
33 1
|
29天前
|
小程序 JavaScript 开发工具
|
1月前
|
缓存 小程序 UED
如何利用小程序的生命周期函数实现数据的加载和更新?
如何利用小程序的生命周期函数实现数据的加载和更新?
54 4
|
1月前
|
移动开发 小程序 数据可视化
微信小程序可视化开发工具之动态数据
微信小程序可视化开发工具之动态数据
36 3
|
3月前
|
缓存 小程序 数据库
小程序页面之间(传值)传递数据的方法
小程序页面之间(传值)传递数据的方法
182 63
|
2月前
|
小程序 开发者
微信小程序之网络数据请求 wx:request的简单使用
这篇文章介绍了微信小程序中如何使用wx.request进行网络数据请求,包括请求的配置、请求的格式以及如何在开发阶段关闭请求的合法检验。
微信小程序之网络数据请求 wx:request的简单使用
|
2月前
|
小程序 JavaScript
微信小程序学习之数据绑定,事件绑定,事件传参与数据同步的学习记录
本文介绍了微信小程序中的数据绑定、事件绑定、事件传参与数据同步的基本概念和使用方法,包括如何在data对象中定义数据、使用mustache语法在wxml中渲染数据、绑定和处理事件、事件对象属性、事件传参以及实现输入框与data数据的同步。
微信小程序学习之数据绑定,事件绑定,事件传参与数据同步的学习记录
|
2月前
|
小程序 JavaScript 开发工具
微信小程序——全局数据共享
微信小程序——全局数据共享
|
3月前
|
小程序 JavaScript 前端开发
微信小程序开发时数据是否是双向数据绑定的
微信小程序开发时数据是否是双向数据绑定的
|
3月前
|
小程序 JavaScript Java
微信小程序+SpringBoot接入后台服务,接口数据来自后端
这篇文章介绍了如何将微信小程序与SpringBoot后端服务进行数据交互,包括后端接口的编写、小程序获取接口数据的方法,以及数据在小程序中的展示。同时,还涉及到了使用Vue搭建后台管理系统,方便数据的查看和管理。
微信小程序+SpringBoot接入后台服务,接口数据来自后端

热门文章

最新文章