
微信小程序开发(微信小程序与普通网页开发的区别和联系)
来源:
浏览:139
时间:2023-08-06
1. 小程序与普通网页开发的区别
(1)开发语言
- 小程序的主要开发语言是 JavaScript
- 小程序的开发同普通的网页开发相比有很大的相似性
(2)逻辑层和渲染层
- 网页开发渲染线程和脚本线程是互斥的(长时间的脚本运行可能会导致页面失去响应)
说明:网页开发者可以使用到各种浏览器暴露出来的 DOM API,进行 DOM 选中和操作。 - 小程序的逻辑层和渲染层是分开的,分别运行在不同的线程中
说明:小程序的逻辑层运行在 JSCore 中,并没有一个完整浏览器对象,因而缺少相关的DOM API和BOM API。这一区别导致了前端开发非常熟悉的一些库,例如 jQuery、 Zepto 等,在小程序中是无法运行的。同时 JSCore 的环境同 NodeJS 环境也是不尽相同,所以一些 NPM 的包在小程序中也是无法运行的。
(3)开发者面对的运行环境
- 网页开发者需要面对的环境是各式各样的浏览器
说明:PC 端需要面对 IE、Chrome、QQ浏览器等;在移动端需要面对Safari、Chrome以及 iOS、Android 系统中的各式 WebView - 小程序开发过程中需要面对的是两大操作系统 iOS 和 Android 的微信客户端,以及用于辅助开发的小程序开发者工具
(4)开发准备工作及流程
2. 小程序与普通网页开发的联系(代码构成)
备注
2.1 .json 后缀的 JSON 配置文件(JSON 配置)
全局配置局部页面配置
双引号
2.2 .wxml 后缀的 WXML 模板文件(WXML 模板)
小程序开发中的WXML 充当的就是类似网页编程中HTML 的角色。和 HTML 非常相似,WXML 由标签、属性等等构成。但是也有很多不一样的地方:
(1)标签名字有点不一样
- 网页HTML经常会用到的标签是 div, p, span(开发者在写一个页面的时候可以根据这些基础的标签组合出不一样的组件,例如日历、弹窗等等)
说明:既然大家都需要这些组件,为什么我们不能把这些常用的组件包装起来,大大提高我们的开发效率。 - 小程序WXML 用的标签是 view, button, text 等等(这些标签就是小程序给开发者包装好的基本能力,我们还提供了地图、视频、音频等等组件能力)
(2)多了一些 wx:if 这样的属性以及 {{ }} 这样的表达式
MVVM
2.3 .wxss 后缀的 WXSS 样式文件(WXSS 样式)
WXSS 具有 CSS 大部分的特性,小程序在 WXSS 也做了一些扩充和修改:
(1) 新增了尺寸单位 rpx( rpx可以根据屏幕宽度进行自适应)
- 在写 CSS 样式时,开发者需要考虑到手机设备的屏幕会有不同的宽度和设备像素比,采用一些技巧来换算一些像素单位
- WXSS 在底层支持新的尺寸单位 rpx ,开发者可以免去换算的烦恼,只要交给小程序底层来换算(换算采用的浮点数运算,所以运算结果会和预期结果有一点点偏差)
建议
全局样式局部页面样式
(3)WXSS 仅支持部分 CSS 选择器
WXSS补充说明参考:微信小程序开发(框架)中的第2.2节WXSS。
2.4 .js 后缀的 JS 脚本逻辑文件(JS 逻辑交互)
相应处理用户的操作
- 响应用户的操作-事件
- 在 JS 中调用小程序提供的丰富的 API,利用这些 API 可以很方便的调起微信提供的能力,例如获取用户信息、本地存储、微信支付等
拓展-目录结构:


