语法学习

一 模板语法

https://developers.weixin.qq.com/miniprogram/dev/framework/view/wxml/

1.数据代码

// pages/block/block.js 本幢事宜
Page({
/*页面的初始数据*/
data: {
msg:"本幢事宜",
num:10000,
isGirl:false,
person:{
name:"小明",
age:18,
height:168
},
list:[
{
id:0,
name:"小明"
},
{
id:1,
name:"小强"
}
]
}
})

block.js

2.模版代码

<!--pages/block/block.wxml-->
<!-- 1.字符串显示 -->
<view>msg:{{msg}}</view>
<!-- 2.数定类型 -->
<view>num:{{num}}</view>
<!-- 3.布尔值 -->
<view>isGirl:{{isGirl}}</view>
<!-- 4.对象 -->
<view>person:{{person}}</view>
<view>age:{{person.age}}</view>
<!-- 5.在标签的属性中使用,控制台Wxml中查看 -->
<view data-num="{{num}}">自定义属性使用</view>
<!-- 6.使用bool类型充当属性 checked -->
<view>
<!-- 未选中 -->
<view><checkbox >默认未选中</checkbox></view>
<!-- 选中 -->
<view><checkbox checked>默认选中</checkbox></view>
<!-- 改变属性,未选中, 属性写法中不能用空格-->
<view><checkbox checked="{{isGirl}}">改变属性</checkbox></view>
</view>
<view>-------------------------</view>
<!-- 7.运算 ==> 表达示/语句
1.可以在花括号中加入表达式
2.指的是简单的运算(数字运算/字符串拼接/逻辑运算等),
1.数字的加减
2.字符串的拼接
3.三元表达式
3.语句,代码段
1.if else
2.switch
3.do while
4.for
-->
<view>{{1+2}}</view>
<view>{{"1"+"2"}}</view>
<view>-------------------------</view>
<!-- 8.列表循环
1.wx:for="{{数组}}" wx:for-item="循环项的名称" wx:for-index="循环项的索引"
2.wx:key="唯一值",用来提同渲染性能
1.wx:key 绑定一个普通字符串的时候,这个字符串是循环数组中不重复的对象
2.wx:key="*this" 表示是一个普通数组 *this表是是循环项
3.只有一层循环时可以不用写(wx:for-item="item" wx:for-index="index")这两项
-->
<view>列表循环</view>
<view wx:for="{{list}}"
wx:for-item="item"
wx:for-index="index"
wx:key="id">
索引:{{index+1}}--姓名:{{item.name}}
</view>
<view>-------------------------</view>
<!-- 只有一层循环时可以不用写(wx:for-item="item" wx:for-index="index")这两项-->
<view wx:for="{{list}}"
wx:key="id">
索引:{{index+1}}--姓名:{{item.name}}
</view>
<view>-------------------------</view>
<!-- 9.对象循环
1.wx:for="{{对象}}" wx:for-item="对象的值value" wx:for-index="对象的属性key"
-->
<view>对象循环</view>
<view wx:for="{{person}}" wx:for-item="value" wx:for-index="key" wx:key="name">
{{key}}:{{value}}
</view>
<!-- 10.block占位标签写代码时有,渲染时就没有了 -->
<!-- 11.条件渲染 if, else, if else
1.wx:if="{{true/false}}"
wx:elif="{{true/false}}"
wx:else
2.hidden:true隐藏/false为显示
3.使用场景
1.当标签不频繁切换显示优先使用(直接把标签从结构中移除) wx:if
2.当标签频繁切换显示优先使用 hidden
1.通过样式切换显示,display: none;
2.hidden属性不能与样式display一起使用,否则会被覆盖,hidden就不起作用了
-->
<view>-------------------------</view>
<view>条件渲染</view>
<view wx:if="{{true}}">true显示</view>
<view wx:if="{{false}}">false不显示</view>
<view>-------------------------</view>
<view wx:if="{{false}}">false不显示</view>
<view wx:elif="{{false}}">false不显示</view>
<view wx:else>else显示</view>
<view>-------------------------</view>
<view hidden="{{false}}">hidden为true隐藏/false为显示</view>
<view hidden>hidden为true隐藏/false为显示</view>

block.wxml

微信小程序(三)-事件绑定

微信小程序(二)-语法学习的更多相关文章

  1. 微信小程序开发:学习笔记[2]——WXML模板

    微信小程序开发:学习笔记[2]——WXML模板 快速开始 介绍 WXML 全称是 WeiXin Markup Language,是小程序框架设计的一套标签语言,结合小程序的基础组件.事件系统,可以构建 ...

  2. 图片的URL上传至阿里云OSS操作(微信小程序二维码返回的二进制上传到OSS)

    当我们从网络中获取一个URL的图片我们要存储到本地或者是私有的云时,我们可以这样操作  把url中的图片文件下载到本地(或者上传到私有云中)  public String uploadUrlToOss ...

  3. 微信小程序开发:学习笔记[7]——理解小程序的宿主环境

    微信小程序开发:学习笔记[7]——理解小程序的宿主环境 渲染层与逻辑层 小程序的运行环境分成渲染层和逻辑层. 程序构造器

  4. 微信小程序开发:学习笔记[5]——JavaScript脚本

    微信小程序开发:学习笔记[5]——JavaScript脚本 快速开始 介绍 小程序的主要开发语言是 JavaScript ,开发者使用 JavaScript 来开发业务逻辑以及调用小程序的 API 来 ...

  5. 微信小程序开发:学习笔记[4]——样式布局

    微信小程序开发:学习笔记[4]——样式布局 Flex布局 新的布局方式 在小程序开发中,我们需要考虑各种尺寸终端设备上的适配.在传统网页开发,我们用的是盒模型,通过display:inline | b ...

  6. 微信小程序开发:学习笔记[3]——WXSS样式

    微信小程序开发:学习笔记[3]——WXSS样式 快速开始 介绍 WXSS(WeiXin Style Sheets)是一套用于小程序的样式语言,用于描述WXML的组件样式,也就是视觉上的效果. WXSS ...

  7. 微信小程序开发:学习笔记[1]——Hello World

    微信小程序开发:学习笔记[1]——Hello World 快速开始 1.前往微信公众平台下载微信开发者工具. 地址:https://mp.weixin.qq.com/debug/wxadoc/dev/ ...

  8. 微信小程序开发:学习笔记[9]——本地数据缓存

    微信小程序开发:学习笔记[9]——本地数据缓存 快速开始 说明 本地数据缓存是小程序存储在当前设备上硬盘上的数据,本地数据缓存有非常多的用途,我们可以利用本地数据缓存来存储用户在小程序上产生的操作,在 ...

  9. 微信小程序开发:学习笔记[8]——页面跳转及传参

    微信小程序开发:学习笔记[8]——页面跳转及传参 页面跳转 一个小程序拥有多个页面,我们可以通过wx.navigateTo推入一个新的页面.在首页使用2次wx.navigateTo后,页面层级会有三层 ...

随机推荐

  1. HDU6370 Werewolf 【基环内向树】

    HDU6370 Werewolf 题意: 有\(N\)个人玩狼人杀,只有村民和狼人,每个人指定另一个人并指出一个身份,其中:村民是不会说谎的,狼人是有可能说谎的,问在所有情况下必然是狼人的人数和必然是 ...

  2. Codeforces Round #628 (Div. 2) B. CopyCopyCopyCopyCopy(Set)

    题意: 给你一个数组,可以像题目那样无限拼接,问递增子序列的最大长度(可不连续). 思路: 序列的最大长度即为数组中不同元素的个数. Tips: 一开始不知道back-to-back什么意思,看到题目 ...

  3. Codeforces Round #479 (Div. 3) D. Divide by three, multiply by two (DFS)

    题意:给你一个长度为\(n\)的序列\(a\).对它重新排列,使得\(a_{i+1}=a_{i}/3\)或\(a_{i+1}=2*a_{i}\).输出重新排列后的序列. 题解:经典DFS,遍历这个序列 ...

  4. docker+prom+grafana+altermanager

    docker基础 docker run -it --name centos -v $HOME:/tmp -p 8080:8080 centos docker inspect container #查看 ...

  5. 阿里云 MaxCompute(ODPS)

    大数据产品架构 BASE - Dataworks ODPS - MaxCompute ODPS 功能组成(Open Data Process Service) ODPS 是旧称,阿里云公有云服务中现称 ...

  6. LEETCODE - 1228【等差数列中缺失的数字】

    C++: class Solution { public:     int missingNumber(vector<int>& arr) {         int subnum ...

  7. 3.Work Queues

    标题 : 3.Work Queues 目录 : RabbitMQ 序号 : 3 var channel1 = _connection.CreateModel(); channel1.BasicQos( ...

  8. c++ cin 读入txt的问题

    源程序 #include <iostream> using namespace std; struct Stack { int tos; int stackarray[1000]; }; ...

  9. Pymongo 笔记

    Pymongo 1.MongoDB概念 MongoDB是一种非关系型数据库(NoSQL),MongoDB数据存储于内存,内存不足则将热度低数据写回磁盘.存储的数据结构为文档.每个数据库包含若干集合(c ...

  10. PyQt5 问题集

    PyQt5中遇到的一些问题 1.多线程中界面异步刷新 我这里需要给界面动态添加新的控件,但是多线程中似乎并不能直接更新页面? 对于逻辑和界面分离的情况,使用自定义信号的方式进行页面控件的动态添加.注意 ...