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

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

数据绑定

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




相关文章
|
1月前
|
小程序 JavaScript
小程序中的数据双向绑定和Vue的有什么区别
小程序中的数据双向绑定和Vue的有什么区别
|
1月前
|
存储 JavaScript 小程序
jQuery、vue、小程序、uni-app中的本地存储数据和接受数据是什么?
jQuery、vue、小程序、uni-app中的本地存储数据和接受数据是什么?
33 0
|
23天前
|
小程序 JavaScript
微信小程序的事件绑定方式
微信小程序的事件绑定方式
24 4
|
16天前
|
消息中间件 关系型数据库 Kafka
深入理解数仓开发(二)数据技术篇之数据同步
深入理解数仓开发(二)数据技术篇之数据同步
|
16天前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp小程序的共享单车数据存储系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp小程序的共享单车数据存储系统附带文章源码部署视频讲解等
12 1
|
17天前
|
分布式计算 DataWorks 关系型数据库
DataWorks操作报错合集之离线同步任务中,把表数据同步到POLARDB,显示所有数据都是脏数据,报错信息:ERROR JobContainer - 运行scheduler 模式[local]出错.是什么原因
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
1月前
|
JSON 小程序 JavaScript
实现小程序与SSM后台数据交互
该文介绍了如何实现小程序与SSM后台的数据交互。在Java控制器中,通过`@RequestMapping`注解的`queryShop`方法处理HTTP请求,设置响应头允许跨域并返回JSON格式的商品列表。小程序端使用wx.request进行GET请求,接收到数据后在控制台打印。示例还包括了传递参数的方法和展示的交互效果图片。
23 2
|
1月前
|
JSON 小程序 JavaScript
微信小程序页面传参(多条数据的传递)
本文介绍了微信小程序中页面间参数传递的方法。1) 单个数据传递:通过`wx.navigateTo`将ID拼接在URL中传递,接收页面在`onLoad`中获取。2) 多个参数传递:将数据转换为JSON字符串,然后通过URL参数传递,接收页面同样在`onLoad`中解析JSON恢复数据。3) 提到了JSON作为数据交换格式的基础知识。全文鼓励读者尝试并点赞。
28 1
|
1月前
|
SQL 缓存 算法
实时计算 Flink版产品使用合集之可以把初始同步完了用增量模式,但初始数据还是要同步,除非初始的数据同步换成用其他工具先同步过去吧,是这个意思吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
24天前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp小程序的旅游数据附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp小程序的旅游数据附带文章源码部署视频讲解等
14 0

热门文章

最新文章