5-微信小程序语法参考

news2024/11/27 22:43:51

1. 数据绑定

官网传送门
WXML 中的动态数据均来自对应 Page 的 data。

数据绑定使用 Mustache 语法(双大括号)将变量包起来
在这里插入图片描述

ts

Page({
	data: {
		info: 'hello wechart!',
		msgList: [{ msg: 'hello' }, { msg: 'wechart' }]
	},
})

WXML

<view class="view-container">
	<view>
		<text>{{info}}</text>
	</view>
</view>

Mustache语法应用场景

  • 绑定内容
  • 绑定属性
  • 运算(三元运算、算术运算)
  • 逻辑判断
  • 字符串运算
  • 数据路径运算

注:微信小程序数据绑定与vue2的语法相同

2. 事件绑定

官网传送门
常用事件

类型绑定方式事件描述
tapbindtap或bind:tap触摸之后马上离开,类似html中click事件
inputbindinput或bind:input文本框输入事件
changebindchange或bind:change状态改变时触发事件

事件回调对象event属性列表

属性类型说明
typeString事件类型
timeStampinteger页面打开到触发事件经过的毫秒数
targetObject触发事件的组件的属性值集合
currentTargetObject当前组件的属性值集合
detailObject额外的信息
tochesArray触摸事件,当前停留在屏幕中的触摸点信息的数组
changedTochesArray触摸事件,当前变化的触摸点信息的数组

bindtap使用

在这里插入图片描述

WXML

	<view>
		<button bind:tap="btnTapHandler">Click</button>
	</view>

ts

Page({
	btnTapHandler(event: WechatMiniprogram.BaseEvent){
		console.log(event)
	}
})

事件传参&数据同步

数据同步
例:点击add,count自增1
在这里插入图片描述
WXML

	<view>
		<text>{{count}}</text>
	</view>
	<view>
		<button bind:tap="addCount">Add</button>
	</view>

ts

Page({
	data: {
		count: 0
	},
	addCount() {
		this.setData({
			count: this.data.count + 1
		})
	},
})

事件传参
通过属性data-info给函数传递参数, e.target.dataset.info获取参数
例:点击add+2,count自增2
在这里插入图片描述
WXML

	<view>
		<text>{{count}}</text>
	</view>
	<view>
		<button bind:tap="addDoubleCount" data-info="{{2}}">Add+2</button>
	</view>

ts

Page({
	data: {
		count: 0
	},
	addDoubleCount(e: WechatMiniprogram.BaseEvent) {
		this.setData({
			count: this.data.count + e.target.dataset.info
		})
	},
})

bindInput

我们来做一个输入框,输入的时候改变info的内容
在这里插入图片描述

WXML

	<view>
		<text>{{info}}</text>
	</view>
	<view>
		<input bindinput="inputHandler" />
	</view>

ts

Page({
	data: {
		info: 'hello wechart!'
	},
	inputHandler(e: WechatMiniprogram.CustomEvent) {
		this.setData({
			info: e.detail.value
		})
	},
})

3. 条件渲染

官网入口
点击开关block或者unblock
在这里插入图片描述

WXML

	<view>
		<switch checked="{{checked}}" bindchange="switchChange"/>
	</view>
	<view wx:if="{{checked}}">
		Block
	</view>
	<view wx:else>
		UnBlock
	</view>

ts

Page({
	data: {
		checked: true,
	},
	switchChange(e: WechatMiniprogram.CustomEvent) {
		this.setData({
			checked: e.detail.value
		})
	},
})

4. 列表渲染

官网传送门

在组件上使用 wx:for 控制属性绑定一个数组,即可使用数组中各项的数据重复渲染该组件。

默认数组的当前项的下标变量名默认为 index,数组当前项的变量名默认为 item
在这里插入图片描述

	<view wx:for="{{msgList}}">
		{{index}}: {{item.msg}}
	</view>
Page({
  data: {
		msgList: [{ msg: 'hello' }, { msg: 'wechart' }]
  }
})

使用 wx:for-item 可以指定数组当前元素的变量名,

使用 wx:for-index 可以指定数组当前下标的变量名:

<view wx:for="{{msgList}}" wx:for-index="idx" wx:for-item="itemName">
  {{idx}}: {{itemName.message}}
</view>

5. 数据请求

在小程序官网 开发管理 ->开发配置 ->服务器域名配置合法域名
在这里插入图片描述
可以在开发工具详情查看配置的域名
在这里插入图片描述

get

		wx.request({
			url: 'https://www.***.cn/api/get',
			method: 'GET',
			data: {
				name: 'zs',
			},
			success: (res) => {
				console.log(res);
			}
		})

post

		wx.request({
			url: 'https://www.***.cn/api/post',
			method: 'POST',
			data: {
				name: 'zs',
				age: 22
			},
			success: (res) => {
				console.log(res);
			}
		})

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

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

相关文章

分类问题:人工神经网络(ANN)+BP算法(误差后向传播)+考试例题讲解

学习链接:分类问题:人工神经网络(ANN)+BP算法(误差后向传播)+考试例题讲解 资料链接:链接:https://pan.baidu.com/s/1ijvMQmwtRgLO4KDSsNODMw 提取码:vyok 神经网络的应用非常的广,它核心思想非常简单,就是人是如何认知感知并且处理这个世界中的现实问题的。…

【React】Redux的使用详解

文章目录 Redux的三大原则Redux官方图react-redux使用 1、创建store管理全局状态​ 2、在项目index.js根节点引用 3、 在需要使用redux的页面或者组件中&#xff0c;通过connect高阶组件映射到该组件的props中 redux中异步操作如何使用redux-thunkcombineReducers函数 Re…

[C#]winform部署官方yolov8-rtdetr目标检测的onnx模型

【官方框架地址】 https://github.com/ultralytics/ultralytics 【算法介绍】 RTDETR&#xff0c;全称“Real-Time Detection with Transformer for Object Tracking and Detection”&#xff0c;是一种基于Transformer结构的实时目标检测和跟踪算法。它在目标检测和跟踪领域…

保证Kafka消息有序性

一、Kafka特性 写入同一个partion分区中的数据是一定有顺序的kafka中一个消费者消费一个partion的数据&#xff0c;消费者取出数据时&#xff0c;也是有顺序的 二、保证消息Kafka消息有序性 在生产者端&#xff0c;应保证消息被写入同一分区。可以在构造消息时指定消息的key…

Kafka-消费者-KafkaConsumer分析

与KafkaProducer不同的是&#xff0c;KafkaConsumer不是一个线程安全的类。 为了便于分析&#xff0c;我们认为下面介绍的所有操作都是在同一线程中完成的&#xff0c;所以不需要考虑锁的问题。 这种设计将实现多线程处理消息的逻辑转移到了调用KafkaConsumer的代码中&#x…

葡萄酒术语“干”是什么意思呢?

一个初学品酒的人常常会感到力不从心&#xff0c;有如此多的术语&#xff0c;如甜、干、单宁、酒体等等&#xff0c;很容易让人迷失。嗯&#xff0c;就像情人眼里出西施一样&#xff0c;“好酒”因人而异。虽然品尝各种不同的葡萄酒是了解你喜欢什么的最好方法&#xff0c;但我…

springboot开启HTTPS

目录 一、前言 HTTP和HTTPS的含义以及区别 二、域名映射 三、添加SSL证书 四、Http转Https 五、内网穿透 一、前言 我们平常写完一个接口&#xff0c;其访问一般都是使用http协议 我们最终想要的结果是使用安全的HTTPS来访问 在我们开始实现之前&#xff0c;我们要先搞明…

前端——框架——Vue

提示&#xff1a; 本文只是从宏观角度简要地梳理一遍vue3&#xff0c;不至于说学得乱七八糟、一头雾水、不知南北&#xff0c;如果要上手写代码、撸细节&#xff0c;可以根据文中的关键词去查找资料 简问简答&#xff1a; vue.js是指vue3还是vue2&#xff1f; Vue.js通常指的是…

软件测试|sqlalchemy relationship

简介 SQLAlchemy是一个流行的Python ORM&#xff08;对象关系映射&#xff09;库&#xff0c;它允许我们以面向对象的方式管理数据库。在SQLAlchemy中&#xff0c;relationship是一个重要的功能&#xff0c;用于建立表之间的关系。在本文中&#xff0c;我们将详细探讨relation…

阿里云国外云服务器地域、收费标准及活动报价2024新版

阿里云国外服务器优惠活动「全球云服务器精选特惠」&#xff0c;国外服务器租用价格24元一个月起&#xff0c;免备案适合搭建网站&#xff0c;部署独立站等业务场景&#xff0c;阿里云服务器网aliyunfuwuqi.com分享阿里云国外服务器优惠活动&#xff1a; 全球云服务器精选特惠…

【前后端的那些事】评论功能实现

文章目录 聊天模块1. 数据库表2. 后端初始化2.1 controller2.2 service2.3 dao2.4 mapper 3. 前端初始化3.1 路由创建3.2 目录创建3.3 tailwindCSS安装 4. tailwindUI5. 前端代码编写 前言&#xff1a;最近写项目&#xff0c;发现了一些很有意思的功能&#xff0c;想写文章&…

Power Designer 连接 PostgreSQL 逆向工程生成pd表结构操作步骤以及过程中出现的问题解决

一、使用PowerDesigner16.5 链接pg数据库 1.1、启动PD.选择Create Model…。 1.2、选择Model types / Physical Data Model Physical Diagram&#xff1a;选择pgsql直接【ok】 1.3、选择connect 在工具栏选择Database-Connect… 快捷键&#xff1a;ctrlshiftN.如下图&#xff…

第八站:C++面向对象(继承和派生)

继承和派生 派生:由父类派生出子类 继承:子类继承父类(继承不会继承析构函数和构造函数:父类的所有成员函数&#xff0c;以及数据成员&#xff0c;都会被子类继承&#xff01;) "子类派生出的类"会指向"父类被继承的类",父类就是基类 实例1: 先创建一个父…

Flask框架小程序后端分离开发学习笔记《2》构建基础的HTTP服务器

Flask框架小程序后端分离开发学习笔记《2》构建基础的HTTP服务器 Flask是使用python的后端&#xff0c;由于小程序需要后端开发&#xff0c;遂学习一下后端开发。本节提供一个构建简单的本地服务器的代码&#xff0c;仔细看注释&#xff0c;学习每一步的流程&#xff0c;理解服…

react-app框架——使用monaco editor实现online编辑html代码编辑器

文章目录 ⭐前言&#x1f496;react系列文章 ⭐配置monaco-editor&#x1f496;引入react-monaco-editor&#x1f496;引入react-app-rewired&#x1f496;通过config-overrides.js添加monaco插件配置 ⭐编辑代码的react页面配置&#x1f496;扩展 可自定义配置语言 ⭐效果⭐总…

使用 mybatis-plus 的mybaits的一对多时, total和record的不匹配问题

应该是框架的问题&#xff0c;去官方仓库提了个issues&#xff0c;等回复 https://github.com/baomidou/mybatis-plus/issues/5923 背景 发现 record是两条&#xff0c;但是total显示3 使用resultMap一对多时&#xff0c;三条数据会变成两条&#xff0c;但是total确是3条 下…

新能源汽车智慧充电桩方案:基于视频监控的可视化智能监管平台

一、方案概述 TSINGSEE青犀&触角云新能源汽车智慧充电桩方案围绕互联网、物联网、车联网、人工智能、视频技术、大数据、4G/5G等技术&#xff0c;结合云计算、移动支付等&#xff0c;实现充电停车一体化、充电桩与站点管理等功能&#xff0c;达到充电设备与站点的有效监控…

[足式机器人]Part2 Dr. CAN学习笔记-Ch04 Advanced控制理论

本文仅供学习使用 本文参考&#xff1a; B站&#xff1a;DR_CAN Dr. CAN学习笔记 - Ch04 Advanced控制理论 1. 绪论2. 状态空间表达State-Space Representation3. Phase Portrait相图&#xff0c;相轨迹3 1. 1-D3 2. 2-D3 3. General Form3 4. Summary3.5. 爱情中的数学-Phase …

Luckysheet类似excel的在线表格(vue)

参考文档&#xff1a;快速上手 | Luckysheet文档 一、引入 在vue项目的public文件夹下的index.html的<head>标签里面引入 <link relstylesheet hrefhttps://cdn.jsdelivr.net/npm/luckysheetlatest/dist/plugins/css/pluginsCss.css /><link relstylesheet hre…

使用 Neo4j 和 LangChain 集成非结构化知识图增强 QA

目前基于大模型的信息检索有两种方法&#xff0c;一种是基于微调的方法&#xff0c;一种是基于 RAG 的方法。 信息检索和知识提取是一个不断发展的领域&#xff0c;随着大型语言模型&#xff08;LLM&#xff09;和知识图的出现&#xff0c;这一领域发生了显着的变化&#xff0…