第01讲
微信小程序是一个“触手可及”,“无需安装卸载”,“用完即走”,“易传播”的好东西。
第02讲什么是小程序
小程序 VS App
第03讲-小程序生态及其应用前景
小程序的几个分类,内容/工具型小程序,零售型小程序,游戏娱乐型小程序。
很多行业都接入了微信小程序。
第04讲-小程序开发前准备
在微信的官方平台上注册小程序账号,具体内容可以自己看视频。
下面看微信公众号的几个重要内容,在视频里面有详细讲解,自己也可以看。
有几个要点需要记住:
第05讲-安装微信开发者工具
微信开发的文档(右上角)
“小程序开发”>>工具“下载”对应电脑的win64/win32/mac版本
这个是几个步骤,项目名称需要新建一个空文件夹,或者有app.json为后缀的文件夹。
文件的界面分布如下。
这几处的内容都是帮助开发者在换电脑或者软件重新安装时配置,以便其后将原来的内容导入,自动恢复项目开发者设置。
代码的复用在utils里面。
第07讲-小程序配置文件介绍
app
page
第08讲-开发者工具详解
目标是写一个Hello World 小程序。
“普通编辑”点击后>>“添加编译模式”>>“编译场景”
远程调试功能:通过网络连接对真机调试。
切后台:切换不同场景值
版本的选择:
第九讲drop。
第10讲-创建第一个小程序
创建app.js文件: App({})
注册微信小程序的应用App函数里面传参,参数类型Object,可以在里面传入生命周期钩子和事件处理函数,全局数据。先传一个空的。
创建app.json文件:微信小程序的全局配置。通过pages属性注册,它的值是一个list类型,里面的值为所有页面的页面路径
{
"pages":[
]
}
以下创建的文件需要保持命名一致
在app.json中注册我们的helloworld的名字
{
"pages":[
"helloworld"
]
}
这一切创建完之后可以尝试运行以下,这里有个坑就是在command+R之后会报
cloud init error: {errMsg: “operateWXData:fail invalid scope”}
错误
这是因为在小程序开发的版本号v1.02.1810250情况下会自动配置云环境
如果是云端配置的话第一次初始化需要配置云端环境
详见:
https://blog.csdn.net/qq_41731861/article/details/82932688
配置完成之后运行才可以。
关于全局配置这一点老师讲的不是很明白详见官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/config.html#全局配置
其实一开始选则创建小程序的时候可以选择快速创建小程序就不会有上面这样的麻烦,内容也不需要多余配置。其中有一个大大大bug就是按照老师的视频配置方法会出现
这种错误,因为现在的小程序开发框架已经更新(2018.v1.02.1810250)最好的方法就是不需要删任何内容,直接在pages的文件夹下面创建helloworld的内容。
第12讲-WXML之语法
大小写敏感,属性闭合。使用类似于html。
第13讲-WXML特性之数据绑定
WXML四个属性
数据绑定
` wx:for="{{item}}" wx:for-item="item" wx:key="index"`
第15讲-WXML特性之条件渲染
注意
hidden也有组件控制元素的显示或者隐藏的功能但是它与if的不同之处
第17讲-WXSS特性之响应式像素
此处建议大家学习一下css的各种属性。
wxss对css进行了几处优化
DPR:在切换模拟器设备时在每个设备后面显示。
微信团队规定屏幕宽度为750个rpx
第18讲-WXSS特性之样式
样式导入
@import+文件路径
样式文件执行顺序,从上到下,从左到右。
如果在class文件里面将border设置为黄色则会覆盖掉已经设置好的外连样式的黑色。
第19讲-WXSS特性之选择器
选择器:选择想要的样式的模式。
选择器有优先级:权重值决定优先使用。
!important
.title{
color : red !important;
}
第20讲-JavaScript介绍
JavaScript是一种轻量的解释性语言。动态的基于原型和范式的脚本语言。支持面向对象,函数式和命令式的编程风格。
<Java与JavaScript关系就像雷锋和雷峰塔>
第21讲-小程序JavaScript实现
浏览器中的JS
小程序中的JS
没有DOM对象,BOM。没有jQuery。
首先了解一下ECMAScript
小程序相当于对ECMAScript的一种实现。
注释:
//单行注释
/*
多行注释
*/
/*结尾注释,其后语句不会执行
条件语句也和js基本相同,但是wxs中不支持try catch 语句。
第25讲-小程序运行机制
冷启动:用户首次打开小程序或者小程序被销毁后再次启动。(被销毁的情况,微信后台短时间内连续收到两次的警报,时间间隔为5秒)
热启动:用户已经打开过小程序,再次打开。
小程序如果发现有最新的版本会帮助下载最新的版本包,微信客户端会同时启动。
第26讲-小程序加载机制
小程序的启动流程图,两个线程
Ajax请求json数据。
24,25,26都是底层架构。
第27讲-生命周期
第一次进入小程序客户端会初始化小程序的环境,CDN/本地缓存中的代码包。App实例传递onLaubch事件,小程序启动。退出后小程序的onHide事件启动,小程序被唤醒onShow,脚本运行错误会报onError错误。
页面生命周期
在逻辑层的配置实例启动onLoad方法,页面显示onShow,页面初次渲染完成后执行onReady方法。关闭当前页
onReady,onLoad在页面没有被销毁之前只能调用一次。
第28讲-页面路由
多页面小程序。
简单了解用于切换多个页面。
target属性:触发事件的根源组件,id,类型,自定义属性集合。
currentTarget:触发事件的当前组件id,类型,自定义属性集合。
touches:表示当前停留在页面上的信息。
changetouches:有变化的触摸点。
detail:触摸点距离边框的距离;媒体播放的时间戳,播放状态。
三个阶段
touchstart:手指按下屏幕
touchmove:手指移动
touchcancel:被来电等打断
touchend:手指离开屏幕
tap:手指在按下屏幕之后小于350ms
longpress:手指按下超过350ms,推荐使用
longtap:手指按下超过350ms
示例:
通过点击内容块打印不同的内容。