微信小程序学习——框架视图层(view)
视图层是有WXML与WXSS编写的,由组件来进行展示。
WXML(WeiXin Markup Language)用于写页面结构的。
WXSS(WeiXin Style Sheet)用于页面的样式。
组件(Component)是视图的基本组成单元。
一、数据绑定
组件属性(需要在引号之内)
<view id="item-{{id}}"></view>
page({
data: {
id: 0
}
})
控制属性
<view wx:if="{{condition}}"></view>
page({
data: {
condition: true
}
})
二、列表渲染
wx:for
<view wx:for="{{array}}">
{{index}}: {{item.message}}
</view>
page({
data: {
array: [
{message: 'foo'},
{message: 'bar'}
]
}
})
使用 wx:for-item 可以指定数组当前元素的变量名。
使用 wx:for-index 可以指定数组当前下标的变量名。
<view wx:for="{{array}}" wx:for-index="id" wx:for-item='arr'>
{{id}}: {{arr.message}}
</view>
三、条件渲染 wx:if
wx:if...wx:elif...wx:else
<view wx:if="length > 5">1</view>
<view wx:elif="length > 2">2</view>
<view wx:else>3</view>
四、模板
<template name="msgItem">
<view>
<text> {{index}}: {{msg}}</text>
<text> Time: {{time}} </text>
</view>
</template> <template is="msgItem" data="{{...item}}">
Page({
data: {
item: {
index: 0,
msg: 'this is a template',
time: '2016-09-15'
}
}
})
四、事件
<view id="tapTest" data-hi="WeChat" bindtap="tapName"> Click me! </view>
page({
tapName: function(e) {
console.log(e)
}
})
事件分类:冒泡事件和非冒泡事件
1、冒泡事件:当一个组件上的事件被触发后,该事件会向父节点传递。
2、非冒泡事件:当一个组件上的事件被触发后,该事件不会向父节点传递。
冒泡事件列表
| 类型 | 触发条件 |
| touchstart | 手指触摸动作开始 |
| touchmove | 手指触摸后移动 |
| touchcancel | 手指触摸动作被打断,如来电提醒,弹窗 |
| touchend | 手指触摸动作结束 |
| tap | 手指触摸后马上离开 |
| longtap | 手指触摸后,超过350ms再离开 |
注:除表上之外的其他组件自定义事件都是非冒泡事件。
事件绑定:
bind事件绑定不会阻止冒泡事件向上冒泡,catch事件绑定可以阻止事件冒泡向上冒泡。
微信小程序学习——框架视图层(view)的更多相关文章
- 微信小程序笔记<七>视图层 —— wxml
微信小程序的视图层由 *.wxml 组成,wxml与html一样属于标签语言,但wxml与html的标签截然不一样. xwml特性 一.数据绑定 <!--wxml--> <view& ...
- 微信小程序学习指南
作者:初雪链接:https://www.zhihu.com/question/50907897/answer/128494332来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...
- 微信小程序学习笔记二 数据绑定 + 事件绑定
微信小程序学习笔记二 1. 小程序特点概述 没有DOM 组件化开发: 具备特定功能效果的代码集合 体积小, 单个压缩包体积不能大于2M, 否则无法上线 小程序的四个重要的文件 *js *.wxml - ...
- 微信小程序把玩(八)view组件
原文:微信小程序把玩(八)view组件 刚看到这个效果的时候还真是和ReactNative的效果一致,属性也基本的一样. view这个组件就是一个视图组件使用起来非常简单. 主要属性: flex-di ...
- 微信小程序 学习资料
微信小程序 学习资料 资料名称 网址 官方教程 https://developers.weixin.qq.com/miniprogram/dev/index.html?t=18110517
- 微信小程序之可滚动视图 scroll-view 的使用注意
微信小程序之可滚动视图 scroll-view 使用注意: 1.scroll-view 中的需要滑动的元素不可以用 float 浮动: 2.scroll-view 中的包裹需要滑动的元素的大盒子用 d ...
- 微信小程序 wafer2框架摘要
微信小程序 wafer2框架摘要 帮助文档:https://github.com/tencentyun/wafer2-startup/wiki 使用了knex.js进行数据库交互,使用了koa.js进 ...
- 【微信小程序学习笔记】入门与了解
[微信小程序学习笔记(一)] IDE 下载安装 下载地址 官方工具:https://mp.weixin.qq.com/debug/w … tml?t=1476434678461 下载可执行文件后,可按 ...
- 微信小程序学习笔记一 小程序介绍 & 前置知识
微信小程序学习笔记一 1. 什么是小程序? 2017年度百度百科十大热词之一 微信小程序, 简称小程序, 英文名 Mini Program, 是一种不需要下载安装即可使用的应用 ( 张小龙对其的定义是 ...
随机推荐
- 让WebService支持Get请求
在C#中,新建一个webservice,默认是post类型的.如果需要支持Get请求,需要对web.config文件进行配置 <system.web> <compilation de ...
- 海量数据拆分到nosql系统的一种方案
获取某用户的好友最新动态. 我们大体上来说先按照用户ID将用户的好友一致性哈希到几个mongodb集群,然后把用户的最新信息也存储到mongodb中.然后利用消息系统保持数据库中的数据和mongdb中 ...
- Google 发布的15个 Android 性能优化典范
2015年伊始,Google发布了关于Android性能优化典范的专题,一共16个短视频,每个3-5分钟,帮助开发者创建更快更优秀的Android App.课程专题不仅仅介绍了Android系统中有关 ...
- Spring入门教程:通过MyEclipse开发第一个Spring项目
Animal.java package com.project; public class Animal { private String name; public String getName() ...
- MUI class="mui-switch" 开关监听
如何对MUI中的switch开关按钮进行监听, 页面代码如下: <form class="mui-input-group"> <ul class="mu ...
- stale element reference: element is not attached to the page document 异常
在执行脚本时,有时候引用一些元素对象会抛出如下异常 org.openqa.selenium.StaleElementReferenceException: stale element referenc ...
- [转]关于ios 推送功能的终极解决
刚刚做了一个使用推送功能的应用 遇到了一些问题整的很郁闷 搞了两天总算是弄明白了 特此分享给大家 本帖 主要是针对产品发布版本的一些问题 综合了网上一些资料根据自己实践写的 不过测试也可以看看 首先要 ...
- linux每日命令(18):whereis命令
whereis命令用于查找文件. 该指令会在特定目录中查找符合条件的文件.这些文件应属于原始代码.二进制文件,或是帮助文件. 该指令只能用于查找二进制文件.源代码文件和man手册页,一般文件的定位需使 ...
- 用HTML5+JS开发跨平台的桌面应用
通过Node.js和WebKit技术的融合,开发者可以用HTML5技术编写UI,同时又能利用Node.js平台上众多library访问本地OS的能力,最终达到用Web技术就可以编写桌面应用的目的. 选 ...
- Linux+树莓派3开发总结——树莓派远程文件共享winows
http://blog.csdn.net/xqf1528399071/article/details/52192134 ———————————————————————————————————————— ...