编辑推荐:
目录
第1章 微信小程序入门 1
1.1 微信小程序概述 1
1.2 注册小程序账号 3
1.3 小程序信息的完善 8
1.4 小程序AppID 12
1.5 小程序的开发工具 13
1.6 开发者工具界面 16
1.7 第一个微信小程序 22
第2章 小程序的逻辑层 25
2.1 小程序的全局配置文件 25
2.2 小程序的tabBar属性 28
2.3 小程序的逻辑文件 32
2.4 小程序的生命周期执行顺序 37
2.5 setData视图渲染 43
2.6 变量和函数的作用域及模块化 45
第3章 小程序的视图层 50
3.1 小程序的数据绑定和事件绑定 50
3.2 成绩等级计算器 52
3.3 列表渲染 54
3.4 九九乘法表 56
3.5 条件渲染 58
3.6 选择先行示范区 60
3.7 实现分段函数 64
3.8 成绩计算器 66
3.9 递归求和计算器 69
3.10 随机数求和 72
3.11 简单模板的定义及应用 76
3.12 复杂模板的定义及应用 78
3.13 事件绑定 83
3.14 小猫叫 86
3.15 温度转换计 88
3.16 事件冒泡与事件捕获 90
3.17 小程序include引用文件 94
3.18 旅游攻略 95
3.19 WXSS 99
3.20 字体样式设置 102
第4章 flex布局 104
4.1 flex布局的基本概念 104
4.2 容器属性 106
4.2.1 flex-direction属性 107
4.2.2 flex-wrap属性 109
4.2.3 justify-content属性 111
4.2.4 align-items属性 114
4.2.5 align-content属性 117
4.3 项目属性 122
4.3.1 order属性 122
4.3.2 flex-shrink属性 124
4.3.3 flex-grow属性 127
4.3.4 flex-basis属性 130
4.3.5 align-self属性 132
4.4 猜画小歌 134
4.5 微付宝九宫格导航页面设计 137
第5章 小程序组件 142
5.1 视图容器组件 142
5.1.1 <view>组件 142
5.1.2 <scroll-view>组件 145
5.1.3 <swiper>组件 147
5.1.4 <movable-view>组件 149
5.1.5 <cover-view>组件 150
5.2 基础内容组件 152
5.2.1 <icon>组件 152
5.2.2 <text>组件 155
5.2.3 <rich-text>组件 157
5.2.4 <progress>组件 159
5.3 表单组件 161
5.3.1 <button>组件 161
5.3.2 <radio>组件 165
5.3.3 <checkbox>组件 168
5.3.4 <input>组件 170
5.3.5 <label>组件 174
5.3.6 <form>组件 176
5.3.7 <picker>组件 178
5.3.8 <picker-view>组件 186
5.3.9 <slider>组件 188
5.3.10 <switch>组件 190
5.3.11 <textarea>组件 192
5.4 导航组件 194
5.5 媒体组件 196
5.5.1 <audio>组件 196
5.5.2 <image>组件 198
5.5.3 <video>组件 201
5.5.4 <camera>组件 204
5.6 地图组件<map> 206
5.7 画布组件<canvas> 210
第6章 API 212
6.1 文件传输 212
6.1.1 文件上传 212
6.1.2 文件下载 217
6.2 媒体API 221
6.2.1 图片管理 221
6.2.2 录音管理 225
6.2.3 音频管理 228
6.2.4 视频管理 231
6.2.5 照相和摄像 235
6.3 文件操作 239
6.4 数据缓存 243
6.5 地图和位置 250
6.6 设备API 254
6.6.1 设备系统信息 254
6.6.2 网络状态 258
6.6.3 传感器 260
6.6.4 扫码与打电话 264
6.6.5 屏幕亮度、剪贴板和手机振动 268
6.7 界面API 271
6.7.1 变脸谱游戏 271
6.7.2 阶乘计算器 274
6.7.3 操作菜单 277
6.7.4 导航栏 279
6.7.5 tabBar 281
6.7.6 动画 287
6.7.7 页面位置 292
6.7.8 下拉刷新 294
6.8 绘画API 296
6.8.1 绘制矩形 296
6.8.2 绘制五角星 300
6.8.3 绘制渐变弧形 303
6.8.4 绘制爱心 305
6.8.5 绘制文本 307
6.8.6 颜色透明度 309
6.8.7 绘制不同的线条 311
6.8.8 绘制渐变图形 316
6.8.9 绘制图形阴影效果 318
6.8.10 自由绘图 319
第7章 综合应用案例——中国国旅微信小程序 324
展开
前言
微信小程序(WeChat Mini Program)是一种轻量级的应用程序,微信创始人张小龙是这样定义小程序的:小程序是一种不需要下载安装就可以使用的应用程序,它实现了应用程序“触手可及”的梦想,用户扫一扫或搜一下就能打开应用程序,也体现了“用完即走”的理念,用户不用安装太多应用程序。应用程序随时可用,又无须安装卸载。微信小程序是基于Web前端技术实现的,但它具有独特的语法和框架,提供了微信功能接口,大幅度提高了开发者的程序开发效率,并且可以让零基础的开发者迅速上手,开发出美观且流畅的应用程序。
本书是一本微信小程序案例入门教程,本着简单、易学、有用、有趣的教学理念,遵循人的认知规律,采用由浅入深、循序渐进的任务驱动方式进行内容安排与介绍。
每个实战案例都包含任务描述、导入知识点、实现效果、任务实现4部分,其中任务描述主要讲解该案例需要完成的任务,以及对任务的要求;导入知识点主要讲解完成任务用到的知识点;实现效果主要讲解任务完成后的运行效果,让读者对任务有一个明确的认识;任务实现主要讲解如何通过编写代码完成任务。本书打破了官方文档介绍微信小程序开发的顺序,站在读者的角度进行设计,让初学者能够循序渐进地学习和掌握微信小程序开发的方法和技巧。
本书分为7章,设计了多个实战案例,具体情况如下。
第1章:微信小程序入门。首先介绍小程序的诞生、小程序的优点、小程序的发展前景,然后介绍注册小程序账号、小程序信息的完善、小程序AppID、小程序的开发工具和开发者工具界面,最后通过一个简单的实战案例演示小程序开发的过程和方法。
第2章:小程序的逻辑层。主要讲解小程序的全局配置文件、小程序的tabBar属性、小程序的逻辑文件、小程序的生命周期执行顺序、setData视图渲染、变量和函数的作用域及模块化等内容,为小程序开发奠定了基础。
第3章:小程序的视图层。主要讲解小程序的数据绑定和事件绑定、成绩等级计算器、列表渲染、九九乘法表、条件渲染、选择先行示范区、实现分段函数、成绩计算器、递归求和计算器、随机数求和、简单模板的定义及应用、复杂模板的定义及应用、事件绑定、小猫叫、温度转换计、事件冒泡与事件捕获、小程序include引用文件、旅游攻略、WXSS、字体样式设置等实战案例。
第4章:flex布局。首先介绍flex布局的基本概念;然后讲解flex布局中的容器属性,包括flex-direction属性、flex-wrap属性、justify-content属性、align-items属性和align-content属性;接着讲解flex布局中的项目属性,包括order属性、flex-shrink属性、flex-grow属性、flex-basis属性和align-self属性;最后通过综合实战案例猜画小歌和微付宝九宫格导航页面设计介绍flex布局的容器属性和项目属性的应用。
第5章:小程序组件。主要讲解视图容器组件(<view>组件、<scroll-view>组件、<swiper>组件、<movable-view>组件、<cover-view>组件)、基础内容组件(<icon>组件、<text>组件、<rich-text>组件、<progress>组件)、表单组件(<button>组件、<radio>组件、<checkbox>组件、<input>组件、<label>组件、<form>组件、<picker>组件、<picker-view>组件、<slider>组件、<switch>组件、<textarea>组件)、导航组件(<navigator>组件)、媒体组件(<audio>组件、<image>组件、<video>组件、<camera>组件)、地图组件(<map>组件)、画布组件(<canvas>组件),并且通过实战案例介绍上述组件的应用。
第6章:API。主要讲解微信小程序中的文件传输、媒体API、文件操作、数据缓存、地图和位置、设备API、界面API和绘画API等内容,并且通过实战案例介绍上述内容的应用。
第7章:综合应用案例——中国国旅微信小程序。主要讲解中国国旅微信小程序的完整开发过程,包括界面布局、样式设计、逻辑处理、相关API的调用等。
本书采用任务驱动的一体化教学模式,非常荣幸与腾讯云计算(北京)有限责任公司进行校企合作,所有实战案例都已经在腾讯公司平台上线运行。本书由郭伟、芦娅云、刘珍担任主编,其中第1~3章由郭伟编写,第4章和第6章由芦娅云编写,第5章和第7章由刘珍编写。此外,王明超、韩冬艳、胡兴铭、周同金也参与了本书的编写工作及资料的整理工作。在编写过程中,我们还得到了谢秋桦同学、黄贵洲同学、刘婷婷同学、李沁轩同学的支持和帮助,在此表示衷心的感谢。最后,感谢腾讯云计算(北京)有限责任公司提供的企业真实项目素材。
由于编者水平有限,书中难免存在疏漏和不足之处,真诚地欢迎各位专家、老师、学者和广大读者批评指正,希望能与读者朋友们共同成长。
编 者
2022年1月
展开