当前位置: 首页 > news >正文

5-微信小程序语法参考

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.lryc.cn/news/283466.html

相关文章:

  • 数组练习 Leetcode 566.重塑矩阵
  • Linux centos中find命令的多种用途:按照具体应用来详细说明find的用法举例
  • 服务器数据恢复—OceanStor存储raid5热备盘同步数据失败的数据恢复案例
  • Xline v0.6.1: 一个用于元数据管理的分布式KV存储
  • 【CSS】解决height = line-height 文字不垂直居中(偏上、偏下)的问题
  • 天津想转行学python培训班靠谱吗?
  • (C语言)冒泡排序
  • 怎么样的布局是符合可制造性的PCB布局?
  • 第28关 k8s监控实战之Prometheus(九)
  • 安全防御之可信计算技术
  • FPGA引脚物理电平(内部资源,Select IO)-认知2
  • PBR材质纹理下载
  • mac PyCharm 使用conda环境
  • 10个常用的正则表达式
  • 对一手游的自定义 luajit 字节码的研究
  • 1125. 牛的旅行 (Floyd算法,最短路)
  • oracle “Interested Transaction List”(ITL)的概念
  • kali下-MSF-ftp_login模块破解FTP账号及密码
  • ELK之Filebeat输出日志格式设置及输出字段过滤和修改
  • 【开源】基于JAVA的河南软件客服系统
  • 基于SpringBoot的社区帮扶对象管理系统
  • uniapp踩坑之项目:canvas第一次保存是空白图片
  • es-删除字段-实测
  • 24秋招,百度测试开发工程师三面
  • YOLOv8改进 | 主干篇 | 低照度增强网络PE-YOLO改进主干(改进暗光条件下的物体检测模型)
  • 【VUE】记录一次 VUE中配置生产环境和开发环境方法
  • tessreact训练字库
  • 超时配置(OpenFeign)
  • C++设计模式(李建忠)笔记2
  • 【机器学习】DBSCAN算法