开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第9天,点击查看活动详情
- 今天复习了一下最初始有关微信小程序的知识点。
- 开放注册:任何人都可以注册。
要知道小程序是运行在微信专门为小程序设计的运行环境中,小程序的主要开发语言是JavaScript。
小程序与微信网页有什么区别?
1. 运行环境不同
- 微信网页运行在浏览器,是单进程单线程的(即前面执行完了后面的代码才能执行),网页视图的渲染(html)和脚本(js)的执行是互斥的;
- 小程序的渲染线程和脚本线程是分开的,小程序的渲染线程和脚本线程分别在两个线程中运行。小程序的逻辑层运行在JSCore(小程序的js引擎)中。从而造成了小程序和微信网页最根本的不同。
2. DOM和BOM对象
- 微信网页也可以访问DOM和BOM对象。
- 小程序没有BOM和DOM。
3. 要考虑的兼容性
- 小程序开发要考虑IOS和Android以及微信开发工具环境下兼容性。
- 微信网页考虑的是不同浏览器兼容性。
小程序demo文件说明
- 根目录下的
app.js/json/wxss
是全局的文件 wxss
不是css,只有维修能力能识别这个文件,该文件也不会转换为cssjson
是全局的配置文件js
文件时是全局的逻辑文件project.config.json
是小程序的配置文件,可以不用了解,没什么用pages
里都是小程序的页面,一个页面一个文件夹logs
里是所有的跳转页面
微信页面中的下面导航,是在根目录下的app.json文件中配置出来的
小程序的宿主环境
宿主环境:我们称微信客户端给小程序所提供的环境为宿主环境。小程序借助宿主环境提供的能力,可以完成许多普通网页无法完成的功能。
首先,我们来简单了解下小程序的运行环境。小程序的运行环境分成渲染层和逻辑层,其中 WXML 模板和 WXSS 样式工作在渲染层,JS 脚本工作在逻辑层。
小程序的渲染层和逻辑层分别由2个线程管理:渲染层的界面使用了WebView 进行渲染;逻辑层采用 JsCore 线程运行 JS 脚本。一个小程序存在多个界面,所以渲染层存在多个 WebView 线程,这两个线程的通信会经由微信客户端。
- 渲染层:小程序两个页面之间传数据,需要通过微信客户端进行中转
- 逻辑层:也是需要先发到微信客户端,客户端在通过第三方服务器发送,第三方服务器再发回给客户端,客户端发给逻辑层
以上是针对刚刚学习小程序的人员可以了解的内容,我写的比较通俗易懂了,希望对小伙伴们有所帮助~~~