1.wx:key=“index"还是wx:key=”{{index}}"
wx:key=“index”,并且直接写等于没写,需要给循环的数组赋index属性。
至于wx:key=“{{index}}”,在清楚了wx:key值的两种形式后就会知道这种形式不应当存在。
wx:key的意义:如果列表中项目(item)的位置会动态改变或者有新的项目添加到列表中,并且希望列表中的项目保持自己的特征和状态(如input中的输入内容,switch的选中状态),需要使用wx:key来指定列表中项目的唯一标识符。当数组改版触发渲染层重新渲染的时候,会校正带有key的组件,框架会确保他们被重新排序,而不是重新创建,以确保使组件保持自身的状态,并且提高列表渲染时的效率
wx:key的值的两种形式:
-字符串,代表在for循环的array中item的某个property,该property的值需要是列表中唯一的字符串或数字,且不能动态改变。
-*this,代表在for循环中的item本身,需要item本身是一个唯一的字符串或者数字,如一个每个元素都不同的数字列表。
warning:如不提供 wx:key,会报一个 warning, 如果明确知道该列表是静态,或者不必关注其顺序,可以选择忽略。

2.wx:for注意简化开发
4.1在wx:for所在的标签中,可以对item的内容进行wx:if的判断,因为重复渲染的是包括wx:for所在标签内的部分。
举例:wx:for="{{serviceList}}" wx:if="{{item.display==='1'}}"

3.数据绑定

参考:https://developers.weixin.qq.com/miniprogram/dev/reference/wxml/data.html

WXML 中的动态数据均来自对应 Page 的 data
3.1简单绑定
双大括号{{}}
3.2组件属性、控制属性

<view id="item-{{id}}"> </view>组件属性
<view wx:if="{{condition}}"> </view>控制属性

3.3关键字
如boolean类型、int类型

<checkbox checked="{{false}}"> </checkbox>
<view wx:for="{{4}}"> </view>

不加双引号的写法,计算结果是字符串
3.4运算
三元运算、算数运算、逻辑判断,字符串运算:

<view>{{"hello" + name}}</view> name来自data

数据路径运算:支持选择对象属性、数组下标对应元素

<view>{{object.key}} {{array[0]}}</view>

3.5组合
可以直接在标签中组合,构成新的数组

<view wx:for="{{[zero, 1, 2, 3, 4]}}"> {{item}} </view>

对象

<template is="objectCombine" data="{{for: a, bar: b}}"></template>
<template is="objectCombine" data="{{...obj1, ...obj2, e: 5}}"></template>...展开对象
<template is="objectCombine" data="{{foo, bar}}"></template>对foo和bar组成对象

wxml的一种拼装写法

<image src="{{mHost}}{{item}}" class="post_img"></image>

mHost内容固定,可以只将不一样的部分组成数组循环处理(item)

4.所有组件的公共属性

属性名 描述 注解
id 组件的唯一标示 保持整个页面唯一
class 组件的样式类 在对应的wxss中定义的样式类
style 组件的内联样式 可以动态设置的内联样式
hidden 组件是否显示 所有组件默认显示
data-* 自定义属性 组件上触发的事件,会发送给事件处理函数
bind*/catch* 组件的事件 详见事件

微信小程序-wxml笔记(更新中)相关推荐

  1. 微信小程序知识点汇总---更新中

    微信公众平台 是基于微信公众号,为微信用户提供服务的平台 微信公众平台开发:是基于微信内进行的公众号业务开发: 前端程序员是公众平台开发的主力军 平台登录地址:https://mp.weixin.qq ...

  2. 微信小程序开发笔记 进阶篇③——onfire.js事件订阅和发布在微信小程序中的使用

    文章目录 一.前言 二.onfire.js介绍 三.API介绍 四.实例应用 五.onfire源码 六.实例源码 一.前言 微信小程序开发笔记--导读 二.onfire.js介绍 一个简单实用的事件订 ...

  3. 微信小程序学习笔记(1)

    微信小程序学习笔记 1.小程序代码结构 2.逻辑层和视图层 3. 小程序的宿主环境(通信模型.运行机制.组件.API) 4. 数据绑定和事件绑定 1.小程序代码结构 当开发者新建一个工程时,项目文件包 ...

  4. 云开发(微信-小程序)笔记(五)----云函数,就这(上)

    云开发(微信-小程序)笔记(四)---- 还有吗?再来点 云函数 云函数即在云端(服务器端)运行的函数.在物理设计上,一个云函数可由多个文件组成,占用一定量的 CPU 内存等计算资源:各云函数完全独立 ...

  5. 微信小程序开发-笔记

    一.开发文件结构 1.根目录下有三个文件:app.js,app.json和app.wxss.一个小程序项目必须有的三个描述App的文件.这三个文件是应用程序级别的文件.这3个文件的意义: 表1.1  ...

  6. 小程序 pagescrollto_微信小程序学习笔记(三)-- 首页及详情页开发

    一.常用组件 在上一个章节中讲解了封装请求数据的模块,在此处请求轮播图的数据 1.首页轮播图数据的请求以及渲染 1.1 轮播图数据的请求 pages/home/home.js import 2 使用组 ...

  7. 云开发(微信-小程序)笔记(十四)---- 收藏,点赞(上)

    云开发(微信-小程序)笔记(十三)---- 注册登陆 1.简介 点赞,收藏等都是程序的最简单的功能,在现实的应用中也很常见.这里我就来给大家介绍一下小程序的这个功能. 图标下载地址 先去网站上http ...

  8. 微信小程序开发笔记二(WXSS和CSS样式美化)

    微信小程序开发笔记二(WXSS和CSS样式美化) 一.CSS基本知识 1.Class选择器的定义 2.ID选择器的定义 3.ID选择器和class选择器的区别 4.CSS中设置颜色 5.CSS中的文本 ...

  9. 微信小程序开发笔记——wsdchong

    微信小程序开发笔记 一.小程序简介 小程序起源于微信的webview:此类API最初是提供给腾讯内部一些业务使用,很多外部开发者发现后,照葫芦画瓢,逐渐成为微信中网页的事实标准.2015年初,微信发布 ...

最新文章

  1. Glide 加载圆形头像和gif 图
  2. Windows+Git+TortoiseGit+COPSSH 安装图文教程
  3. 近20个绚丽实用的jQuery/CSS3侧边栏菜单
  4. PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
  5. Java 11 快要来了,编译 运行一个命令搞定!
  6. Delphi中destroy, free, freeAndNil, release用法和区别
  7. CSS 部分知识点 总结
  8. STM32G030C8T6跑马灯程序V0.2(四)
  9. 使用java,求100以内的质数(素数)
  10. Racket 学习笔记
  11. 计算机星形拓扑结构,星型拓扑结构
  12. 淘宝客小程序制作(1)-淘宝的相关的准备
  13. 详解安卓辅助功能服务AccessibilityService(无障碍服务,微信抢红包助手原理)
  14. 在单点登录中,如果 cookie 被禁用了怎么办
  15. 金仓数据库 KingbaseGIS 使用手册(6.8. 几何对象输入函数)
  16. R语言-rethinking包下载安装心得(windows)
  17. android 多个catch,【Android开发坑系列】之try-catch
  18. (后续更新)【微信小程序】毕业设计 租房小程序开发实战,零基础开发房屋租赁系统小程序
  19. 华为手机如何用微信与电脑连接服务器,华为手机也能连接苹果电脑,只需这样做...
  20. 读书笔记_小米创业思考

热门文章

  1. Python基础(适合初学-完整教程-学习时间一周左右-节约您的时间)
  2. Icon图标 [Java]
  3. 戴尔笔记本开机logo进度条时间长的解决办法
  4. 5.zookeeper集成Java项目curator客户端
  5. SDK之aar封装总结
  6. SAP的免安装的虚拟机,我装了好几个版本,各版本大小及电脑配置需求列举如下:...
  7. เล่น บาคาร่ารับสิทธิประโยชน์มากมาย
  8. 使用 hugo oss 搭建个人博客网站
  9. 基于Web的文件管理系统,支持Office、WPS预览/编辑、在线解压缩、文件分享、文件加密、远程存储、远程文件推送、秒传、断点
  10. 学习以太坊部署智能合约(小插曲) — 执行truffle unbox react报错