微信小程序——模板与配置,数据绑定,事件绑定

news2024/11/19 16:28:53

一.数据绑定

1.数据绑定的基本原则

在data中定义数据

在WXML中使用数据

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

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

3. Mustache 语法的格式

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

<!--index.wxml-->
<!-- 把data的数据绑定到页面中渲染,使用Mustache语法 -->
<view>{{info}}</view>

在index.js中:

4.Mustache语法的应用场景

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

a.绑定内容

b.绑定属性

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

5.动态绑定内容

页面的数据如下:

页面的结构如下:

6.动态绑定属性

页面的数据如下:

页面的结构如下:

无论绑定内容还是属性都需要使用

7.三元运算

页面的数据如下:

页面的结构如下:

    • 三元运算

页面的数据如下:

页面的结构如下:

二.事件绑定

1.什么是事件

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

2.小程序中常用的事件

3.事件对象的属性列表

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

4. target 和 currentTarget 的区别

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

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

e . target 指向的是触发事件的源头组件,因此,e . target 是内部的按钮组件

e . currentTarget 指向的是当前正在触发事件的那个组件,因此,e . currentTarget 是当前的 view 组件。

5.bindtap的语法格式

在小程序中,不存在 HTML 中的 onclick 鼠标点击事件,而是通过 tap 事件来响应用户的触摸行为。

a.通过 bindtap ,可以为组件绑定 tap 触摸事件,语法如下:

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

定义按钮的事件处理函数

点击页面的button按钮后,会在调试器的终端里有显示:

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

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

在wxml中加入一个+1按钮:

<button type="primary" bindtap="CountChange">+1</button>

同时要在data内写入:

7.事件传参

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

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

解决方法:

可以为组件提供 data -*自定义属性传参,其中*代表的是参数的名字,示例代码如下: 没有大括号就只是文本 省略Mustache 语法(双大括号),就会是一个字符串。

此时在控制台打印效果如下:

最终:

1.info会被解析为参数的名字

2.数值2会被解析为参数的值

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

此时效果如下:

8.bindinput的语法格式

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

1.通过 bindinput ,可以为文本框绑定输入事件:

<!-- bindinput的语法格式-->
<!-- <input bindinput="inputHandler"  value=""> </input> -->

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

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

实现步骤:

a.定义数据

b.渲染结构

通过value动态绑定msg的值,bindinput预定一个事件处理函数。

c.美化样式

d.绑定 input 事件处理函数

在js内定义一个事件处理函数,通过e拿到最新的文本框数据,调用setData,为msg赋新值

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/157056.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

想提高办公效率?可试试java开源工作流框架

在数据化管理越来越规范的当今社会&#xff0c;采用优质的办公软件平台能提高企业的办公协作效率&#xff0c;因而受到了广泛的欢迎和喜爱。那么&#xff0c;什么是java开源工作流框架&#xff1f;我们可以从它的特点、发展前景等方面来加以了解&#xff0c;一起来了解这一产品…

微信公众号运营工具有哪些?赶紧收藏

再厉害的公众号运营大神背后都有一套宝藏工具大全&#xff0c;辅助运营人一路披荆斩棘&#xff0c;堪称神器&#xff01; 我相信网上一搜也能出来很多的运营工具或是网站&#xff0c;但是这里再来给大家来一个大汇总&#xff0c;这次整理绝对是非常详细和实用的&#xff0c;纯…

Fiddler中常用的功能

Fiddler中常用的功能如下&#xff1a; 停止抓包-清空会话窗-内容过滤请求-解码-设置断点 一、 停止抓包 二、清空会话窗 方法一&#xff0c;工具栏工具&#xff1a; 方法二&#xff0c;命令行形式&#xff1a; 当然&#xff0c;命令行工具也还支持其他命令的输入&#xff0c…

word排版技巧:如何将段中文字生成标题目录

在许多Word文档里面&#xff0c;目录页是非常重要的一页内容&#xff0c;因为目录页展示的是当前文档的内容框型和结构。通过目录页&#xff0c;我们能知道这个文档主要分为哪几部分。就像看书一样&#xff0c;起到了检索的作用。今天&#xff0c;我们就来给大家分享一个偏门的…

焕新古文化传承之路,AI为古彝文识别赋能

目录1 古彝文与古典保护2 古文识别的挑战2.1 西文与汉文OCR2.2 古彝文识别难点3 合合信息&#xff1a;古彝文保护新思路3.1 图像矫正3.2 图像增强3.3 语义理解3.4 工程技巧4 总结1 古彝文与古典保护 彝文指的是云南、贵州、四川等地的彝族人使用的文字&#xff0c;区别于现代意…

【Linux】常用基本指令(续)

文章目录&#x1f3aa; Linux下基本指令1.1 &#x1f680; whoami1.2 &#x1f680; tree1.3 &#x1f680; echo(浅析)1.4 &#x1f680; zip/unzip1.5 &#x1f680; tar1.6 &#x1f680; bc1.7 &#x1f680; history1.8 &#x1f680; uname1.9 &#x1f680; nano1.10 &a…

数据结构基础之动态顺序表详解

文章目录前言一、动态顺序表的概念二、顺序表的结构体三、基本接口1.SeqListInit&#xff08;初始化数组&#xff09;2.SeqListDestory&#xff08;销毁数组&#xff09;3. SeqListCheckCapacity&#xff08;检查改顺序表是否需要扩容&#xff09;4.SeqListPushBack&#xff08…

用真实业务场景告诉你,高并发下如何设计数据库架构?

目录&#xff1a; 用一个创业公司的发展作为背景引入用多台服务器来分库支撑高并发读写大量分表来保证海量数据下查询性能读写分离来支撑按需扩容及性能提升高并发下的数据库架构设计总结 这篇文章&#xff0c;我们来聊一下对于一个支撑日活百万用户的高并系统&#xff0c;他…

如何搭建云进销存-销售管理系统?

1、简介1.1、案例简介本文将介绍&#xff0c;如何搭建云进销存-销售管理。1.2、应用场景云进销存-销售管理应用支持移动端扫码录入&#xff0c;提高开单效率&#xff0c;保证开单质量。支持自定义优先级自动取价&#xff0c;灵活满足不同商品价格管理。2、设置方法2.1、表单搭建…

马蹄集 大小写的转换

大小写的转换 难度&#xff1a;青铜 0时间限制&#xff1a;1秒 巴占用内存&#xff1a;64M 请编写一个简单程序&#xff0c;实现输入字符大小写的转换。其他非法输入&#xff08;非 字母的输入)则原样输出。 #include <bits/stdc.h> using namespace std; int main() { …

1700页!卷S人的 Java《八股文》PDF手册

2022已成为过去式&#xff0c;不论这一年好与坏&#xff0c;我们都需要抓住新一年的机会&#xff0c;不论是跳槽涨薪&#xff0c;还是学习提升&#xff01;先给自己定一个小目标&#xff0c;然后再朝着目标去努力就完事儿了&#xff01; 为了帮大家节约时间&#xff0c;给大家搞…

Java关键字synchronized

提纲 定义 synchronized是同步块&#xff0c;实现了多线程间的互斥同步。它修饰的代码&#xff0c;确保任一时刻只有一个线程进入访问。 特性 因为在synchronized同步块内&#xff0c;只有一个线程能访问&#xff0c;因此确保了同步块内的原子性、可见性和有序性。 使用方式 总…

SpringBoot 统⼀功能处理 AOP

接下来是 Spring Boot 统⼀功能处理模块了&#xff0c;也是 AOP 的实战环节&#xff0c;要实现的⽬标有以下 3 个&#xff1a; 统⼀⽤户登录权限验证&#xff1b;统⼀数据格式返回&#xff1b;统⼀异常处理。 1.⽤户登录权限效验 ⽤户登录权限的发展从之前每个⽅法中⾃⼰验…

day35【代码随想录】贪心算法之加油站、分发糖果、柠檬水找零

文章目录前言一、加油站&#xff08;力扣134&#xff09;方法一方法二二、分发糖果&#xff08;力扣135&#xff09;三、柠檬水找零&#xff08;力扣860&#xff09;前言 1、加油站 2、分发糖果 3、柠檬水找零 一、加油站&#xff08;力扣134&#xff09; 在一条环路上有 n 个…

好文推荐!LLM技术精要;美图发全员激励股✦票;百度/微信大会精华笔记;Flink商✦业化再起波澜;GitHub今日热榜 | ShowMeAI资讯日报

&#x1f440;日报合辑 | &#x1f3a1;AI应用与工具大全 | &#x1f514;公众号资料下载 | &#x1f369;韩信子 &#x1f3a1; 『通向 AGI 之路』大型语言模型&#xff08;LLM&#xff09;技术精要 实话实说&#xff0c;国内在 LLM 模型相关技术方面&#xff0c;此刻距离最先…

【Linux】基础开发工具使用 --- gcc

目录 预处理 编译 汇编 链接 函数库 协助记忆 &#x1f9cb;GCC&#xff08;GNU Compiler Collection&#xff09;是由GNU开发的编程语言编译器。GNU编译器套件包括C、C、 Objective-C、 Fortran、Java、Ada和Go语言前端&#xff0c;也包括了这些语言的库&#xff08;如l…

Docker tarsgo

目录 参考&#xff1a; mysql镜像安装 一、安装镜像 二、创建mysql容器 使用 tarscloud/framework 部署框架 拉取最新版本镜像 启动镜像(目前只考虑了 linux 上, 时间和本机同步) 目录说明 参数解释 Docker 部署 Tars 应用节点 开发环境 docker-compose go安装 ubu…

CSS自定义滚动条

大家好&#xff0c;我是半夏&#x1f474;&#xff0c;一个刚刚开始写文的沙雕程序员.如果喜欢我的文章&#xff0c;可以关注➕ 点赞 &#x1f44d;&#xff5e; 搞前端的半夏 一起学习交流前端&#xff0c;成为更优秀的前端工程师 前言 之前写过一篇scroll-snap让你的滚动条更…

《c++ primer笔记》第二章 变量和基本类型

前言 最近开始二刷c primer&#xff0c;第一遍很模糊的过了一下&#xff0c;由于前面的基础很多没理解透&#xff0c;从12章到16章基本是懵逼的状态。第二次为了保证质量准备把每个章节个人感觉重要的部分进行一个记录与总结&#xff0c;其中也记录了部分看书过程中遇到的问题&…

[JS]JavaScript基础学习笔记(黑马pink+尚硅谷李立超)

文章目录&#x1f97d; 前言&#x1f97d; JavaScript 简介&#x1f30a; JavaScript 是什么&#x1f30a; JavaScript 的作用&#x1f30a; HTML/CSS/JS 的关系&#x1f30a; 浏览器执行 JS&#x1f30a; JS 的组成&#x1f97d; JavaScript 的书写位置&#x1f30a; 行内式 J…