08 | progress组件:如何自定义实现一个环形进度条?
09 | rich-text组件:如何单击预览rich-text中的图片并保存?
10 | view容器组件及Flex布局(一):学习容器组件view及其重要属性
11 | view容器组件及Flex布局(二):介绍flex布局中常用的样式及样式值
12 | 可移动容器及可移动区域(一):学习使用movable-view与movable-area组件
13 | 可移动容器及可移动区域(二):如何实现侧滑删除功能
14 | scroll-view介绍:在小程序中如何实现滚动锚定?
15 | scroll-view介绍:如果渲染一个滚动的长列表?
17 | 滚动选择器(二):使用两种方式自定义实现省、市、区三级联动的选择器
18 | 滑动选择器表单组件:如何基于wxs自定义一个竖向的slider?
20 | image媒体组件(上):如何实现图片的懒加载?
21 | image媒体组件(下):开发中经常遇到的问题?
22 | 如何实现直播间功能?(一):了解live-pusher、live-player组件的主要属性及使用限制
23 | 如何实现直播间功能?(二):如何开启、使用腾讯云的云直播功能
24 | 如何实现直播间功能?(三):安装与使用ffmepg,及使用ffmpeg进行推拉流验证
25 | 如何实现直播间功能?(四):使用live-pusher、live-player组件在小程序中实现直播功能
27 | 如何实现直播间功能?(六):live-pusher、live-player组件在开发中的常见问题
28 | web-view(一):了解session、cookie等相关基本概念
29 | web-view(二):了解常见的四种鉴权方式
30 | web-view(三):如何使用koa框架,及如何进行热加载?
31 | web-view(四):如何在服务器端实现cookie与sesson的生成?
32 | web-view(五):如何将session存储到服务器端,及如何实现token验证?
33 | web-view(六):基于koa中间件,实现微信一键登陆的后端接口
34 | web-view(七):实现微信用户一键登陆
35 | web-view(八):了解正确的微信登陆姿势
36 | web-view(九):web-view组件在开发的常见问题讲解
37 | WebGL介绍(一):了解WebGL相关的基础概念
38 | WebGL介绍(二):如何在小程序中取到WebGL上下文环境对象
39 | WebGL介绍(三):了解WebGL的世界坐标系
40 | WebGL介绍(四):重新认识右手坐标系及如何编写顶点着色器代码
41 | WebGL介绍(五):学习片断着色器编写,了解变量修饰变型uniform与attribute
42 | WebGL介绍(六):了解在WebGL中裁剪空间是如何裁剪出来的
43 | WebGL介绍(七):了解着色器变量值的绑定及三种三角形绘制模式之间的差异
44 | WebGL介绍(八):在着色器中使用共享变量,绘制一个颜色渐变的正方形
46 | WebGL介绍(十):绘制一个旋转的立方体
47 | WebGL介绍(十一):在3D绘制中使用纹理材质
48 | WebGL介绍(十二):如何创建相机、场景及光源
49 | WebGL介绍(十三):创建加载器、渲染器与控制器,完成3D模型文件的加载与展示
精选留言(16)
微信小程序底层机制:小程序基础库主要包括什么内容?
(关于小程序运行机制,推荐补充看一下这篇文章)
原生组件包括:camera、canvas、input、live-player、live-pusher、map、textarea、video。
不过刚刚看了下官网发现,现在 map、video、live-player、live-pusher、canvas(2d) 组件已经支持同层渲染了,官网链接:https://developers.weixin.qq.com/miniprogram/dev/component/native-component.html#原生组件同层渲染。
别人写的同层渲染原理文章:https://developers.weixin.qq.com/community/develop/article/doc/000c4e433707c072c1793e56f5c813
作者回复: 是的,这是一篇讲同层渲染的好内容,推荐大家读下。
同时推荐另一篇:https://juejin.im/post/5e7ad0d1e51d4526cd1e149b
为啥说小程序不简单呢,看完同层渲染就认同了~~
# 小程序的启动方式
- 冷启动
- 热启动
# 什么是热启动
加入用户已经打开过某个小程序,然后在一定时间内再次打开,此时它不需要重新启动,只是将后台状态的小程序切换到前台,这就是热启动。
# 什么是冷启动
用户首次打开小程序,或者是小程序被微信主动销毁之后再次打开,这时候小程序需要重新加载并启动
# 检测新版本
小程序冷启动时如果发现新版本,将会异步下载新版本的代码包,并且同时用客户端本地的代码包进行启动,既新版本的小程序需要等下一次冷启动才用得上
# 小程序主动销毁的情况
1. 小程序进入后台,在后台维持运行;超过一定的时间,大概是5分钟;就会被微信主动销毁
2. 短时间内,目前为5秒钟,连续2次以上收到系统内存警告;微信就会对小程序进行主动销毁。将会收到提示:运行内存不足,请重新打开小程序。我们可以用 wx.onMemoryWarning 监听内存的警告事件,提前处理
作者回复: 👍
李老师,课件好像无法下载呢?
作者回复: 如果不行,可以试一下git clone的方法~
作者回复: 最佳留言奖
作者回复: 我对flutter也比较感兴趣,你如果看到了比较好的基于它的实践,欢迎发给我,我们一起研究学习一下,祝天天进步。
作者回复: 有的,你从源码中也可以看到,因为长时间没有维护,那个模块有bug了,欢迎你给原作者提一个pr
1. 已经打开过小程序,一定时间内再次打开,不需要重新启动;将后台状态的小程序切换到前台
# 冷启动
1. 首次打开是冷启动
2. 被微信销毁关闭后,再次打开,需要重新加载运行
1. 冷启动如果发现新版本,将会异步下载新版本的代码包;
2. 并且同时用客户端的本地代码进行启动
3. 新版本的小程序要等下一次的冷启动才会用上
# 小程序主动销毁的情况
1. 小程序进入后台,在后台维持运行;超过一定的时间,大概是5分钟;就会被微信主动销毁
2. 短时间内,大概5秒钟,连续2次以上收到系统内存警告;微信就会对小程序进行主动销毁
1. 会收到提示:运行内存不足,请重新打开小程序
2. 用 wx.onMemoryWarning 监听内存的警告事件,提前处理
作者回复: 👍
作者回复: 在最后一节有所有课件。也给你发一下,
链接: https://pan.baidu.com/s/1mJq_NVstuPpNRi7PDawjkg 提取码:liyi
这是Mac上的keynote文件,如果在Windows上查看,可以从这个网站转化: https://zhuanhuan.supfree.net/hao.asp?f=key&t=pdf
作者回复: 从这里一气下载所有课件
---
有读者问到视频专栏《微信小程序全栈开发实战》的演示文稿,我整理了出来,都在这里了:
链接:https://pan.baidu.com/s/1mJq_NVstuPpNRi7PDawjkg
提取码:liyi
不是说WXS不能绑定事件吗,那怎么交互?
作者回复: 有机制可以绑定,稍后大概在picker-view时有详细介绍~
作者回复: https://b23.tv/BV1CK411n7wr
直播中有这个问题
作者回复: 在本页面onLoad 加载数据,再渲染视图,这里一般做法,可能页面会有闪白现象。
更好的做法是在上一个页面把数据加载好,在本页面的onLoad周期函数里面直接绑定。
作者回复: 坚持,践行之,一起~~
作者回复: 从后台转前台是热启动。是不检查的。
但热启动的有效时间是很短的。我们今天看昨天打开的小程序,其实都不是热启动,都是检查版本的~
检测小程序版本,异步下载,下次使用新版本
view试图线程
appservice逻辑线程
作者回复: 👍