微信小程序 笔记
1.Input 输入控件
<input type='digit' placeholder='0.00'></input>
如果要使用单纯的数字控件,使那么可以将type设置为digit类型。
其它type的有效值如下:

2.Picker 选择器
项目中有要选择时间,日期的需求,就用到了这个选择控件。
<picker mode="date" start="2013-09-01" end="2027-09-01" value='{{timeValue}}' bindchange='DatePickerValueChanged'>{{timeValue}}</picker>
从底部弹起的滚动选择器,现支持五种选择器,通过mode来区分,分别是普通选择器(selector),多列选择器(multiSelector),时间选择器(time),日期选择器(date),省市区选择器(region),默认是普通选择器(selector)。
3.Flex 布局
微信小程序中,布局用的比多的是Flex 布局,弹性布局。具体的这篇文章写的很好。
http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html
内容对齐(justify-content):主轴上的对齐方式
align-items属性定义项目在交叉轴上如何对齐。
align-content属性定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用。
4.数据绑定
微信小程序不能像js一样,通过getelementByid这类的方法去获取元素,改变元素的值,小程序的数据绑定则是在wxml页面里通过两个中括号将数据绑定到元素上。
例如
<text>{{curentDate}}</text>
在这个页面的对应的js文件里
/**
* 页面的初始数据
*/
data: {
//当前日期
curentDate:'2017-12' },
创建一个相应相同名字的变量来存储数据。
当想改变值的时候,通过setData方法来改变值。
this.setData({
curentDate: '2017-4-5',
});
通过这个方法,会刷新wxml页面上绑定这个变量的值。
5.设置全局变量
在utils文件下,有一个app.js文件,
globalData: {
userInfo: null,
//每月预算
monthlyBudget: '1500.00',
}
在globalData里声明全局变量。
在其它页面里面,获取和设置全局变量
var budget=getApp().globalData.monthlyBudget; //get
getApp().globalData.monthlyBudget=1000; //set
6.Block 与 View
view标签是一个视觉容器,按照我自己的理解,可以理解为html当中的div
而block是块的意思,但是他最后不显示在wxml里面,只是作为写代码时的分块作用,常常和小程序的wx:for 循环一起使用。
<block wx:for="{{resultValue}}">
<text>{{item.Id}}</text>
<text>{{item.Name}}</text>
<text>{{item.Category}}</text>
</block >
如果用了block,那么在最后页面渲染的时候,是没有block这个标签的。我个人还是喜欢用view。
7.wx:for 循环
因为小程序的数据都是通过数据绑定到页面上,,而wx:for 主要用于绑定一个数组类型的数据,很实用的一个功能
item代表当前项。
index 代表当前循环赋值项的索引。
8. 数据请求
小程序当中的数据请求地址是要https,以及不能有端口号,请求地址要在开发者设置里将每一个地址添加,否则会报错。
9.获取系统当前时间
var date=new Date();
var day = date.getDate();
var month=date.getMonth()+1;
var year=date.getFullYear();
this.setData({
timeValue: year.toString()+'-'+month.toString()+'-'+day.toString(),
});
这个和js一样,创建一个date对象.......
10.scroll-view 滚动视图
在网页当中,经常是写一个div,设置高度,然后overflow-x:auto或者overflow-y:auto 来实现固定高度的滚动。
在小程序当中,已经有一些相应的控件了。scroll view了。
<scroll-view scroll-y="true">
</scroll-view>
具体的官方文档:https://mp.weixin.qq.com/debug/wxadoc/dev/component/scroll-view.html
11.实现左右滑动,上下滑动
在相应的视图上面绑定 bindtouchstart 触摸开始,bindtouchmove 触摸移动,bindtouchend 触摸结束
触摸开始:可以在这个事件里面 获取当前开始触摸滚动的起始位置。
触摸滚动: 可以在这个事件里面,获取当前位置的信息 该事件,你这一直触摸滚动的话一直触发
触摸结束 : 故名思意,就是你手指放开的时候,触发。。、
<view bindtouchstart='TouchStart' bindtouchmove='TouchMove' bindtouchend='TouchEnd'>
</view>
TouchStart:function(e){
startPot=e.touches[].pageX;
},
TouchMove:function(e)
{
var touchMove=e.touches[].pageX;
if (touchMove - startPot >= )
{
this.setData({
isClick: false,
//当选择 支出或者输入时,清空一下选择
selectedWay: '',
num: null,
});
}
else if (touchMove - startPot <= - ) {
this.setData({
isClick: true,
//当选择 支出或者输入时,清空一下选择
selectedWay: '',
num: null,
});
}
},
TouchEnd:function(e){
}
微信小程序 笔记的更多相关文章
- 微信小程序笔记(二)
微信小程序环境搭建与开发工具介绍 2-1 开篇介绍及下载工具 1.开发工具下载地址: http://t.cn/RVKH0HS 2.下载安装对应版本:win32,win64,mac; 2-2 小程序 ...
- 微信小程序笔记<七>视图层 —— wxml
微信小程序的视图层由 *.wxml 组成,wxml与html一样属于标签语言,但wxml与html的标签截然不一样. xwml特性 一.数据绑定 <!--wxml--> <view& ...
- 微信小程序笔记<六>模块化 —— module.exports
微信小程序中所有 js 文件作用域皆为独立的,每一个 js 文件即为一个模块.模块与模块之间的引用通过 module.exports 或 exports 对外暴露接口. 注意: exports 是 m ...
- 微信小程序笔记整理--入门篇。
7-2 微信小程序入门篇 准备篇 1.登录网址,https://mp.weixin.qq.com 注册一个微信小程序. 2.获取微信小程序appid,登录自己的小程序后台,在开发者设置中获得appid ...
- 微信小程序笔记<三>入口app.js —— 注册小程序
小程序开发框架在逻辑层使用的语言就是JavaScript,所以想玩小程序JavaScript的基本功一定要扎实.但小程序基于js做了一些修改,以方便开发者更方便的使用微信的一些功能,使得小程序更好的贴 ...
- 微信小程序笔记
1.文件的作用 js,wxml,wxss,json 所有页面中要用到的变量,都放在可了pages目录下 wxml:类似于html文件 wxss:类似于css文件(类, id, 标签,子代,后代,bef ...
- 微信小程序笔记<五> 页面管理及生命周期(route)——getCurrentPages()
在小程序中所有页面的路由全部由框架进行管理,而框架以栈的形式维护了当前的所有页面. 当发生路由切换时,页面栈的表现: getCurrentPages() 用于获取当前页面栈的实例,可以把 getCur ...
- 微信小程序笔记<四>page.js —— 页面注册
小程序的每个页面都是独立的,每个页面都必须有 page.js 和 page.wxhl 文件,page.json 和 page.wxss 文件非必要文件,注意如果创建 page.json 则至少保证有一 ...
- 微信小程序笔记<二>认识app.json
*.json文件在小程序开发中必不可少,从 app.json 开始认识小程序中的配置文件*.json: app.json 为小程序必须文件,它不仅作为配置文件管理着小程序的UI还充当着路由器的功能: ...
随机推荐
- RQNOJ 188 购物问题:树形dp
题目链接:https://www.rqnoj.cn/problem/188 题意: 商场以超低价格出售n个商品,购买第i个商品所节省的金额为w[i]. 为了防止亏本,有m对商品是不能同时买的.但保证商 ...
- ES BM25 TF-IDF相似度算法设置——
Pluggable Similarity Algorithms Before we move on from relevance and scoring, we will finish this ch ...
- yii2 linux安装教程
安装扩展 安装Yii最好的方式就是使用Composer安装,所以我们需要安装Composer,但是为了安装Composer,我们需要安装一下关于Composer和Yii2的许多扩展包,别担心下面的教程 ...
- CF785CAnton and Permutation(分块 动态逆序对)
Anton likes permutations, especially he likes to permute their elements. Note that a permutation of ...
- DDP入门
DDP,即动态动态规划,可以用于解决一类带修改的DP问题. 我们从一个比较简单的东西入手,最大子段和. 带修改的最大子段和其实是常规问题了,经典的解决方法是用线段树维护从左,右开始的最大子段和和区间最 ...
- python爬虫知识点总结(八)Selenium库详解
官方学习文档:http://selenium-python.readthedocs.io/api.html 一.什么是Selenium? 答:自动化测试工具,支持多种浏览器.用来驱动浏览器,发出指令让 ...
- ASM认证与口令文件
ASM认证 ORACLE ASM 实例没有数据字典,所以连接ASM 实例只能通过如下三种系统权限来进行连接: SYSASM,SYSDBA,SYSOPER. 可以通过如下三种模式来连接ASM 实例:1. ...
- Poj_1088_滑雪(DP)
一.Description(poj1088) Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激.可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载 ...
- POJ2481(树状数组:统计数字 出现个数)
Cows Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 15405 Accepted: 5133 Description ...
- Django简单快速实现PUT、DELETE方法
使用django的小伙伴们应该都知道我们是无法开心的处理PUT跟DELETE的 $.ajax({ url: 'XXX', type: 'PUT', dataType: 'json', data: { ...