1.1.1 什么是微信公众号 1
1.1.2 什么是微信小程序 3
1.1.3 微信小程序的应用领域 4
1.1.4 怎样学好微信小程序 5
1.1.5 微信小程序的前景 6
1.2 小程序开发需要的技术 8
1.2.1 JavaScript技术 8
1.2.2 CSS技术 9
1.2.3 HTML(XML)技术 10
1.3 小程序开发所使用的技术 11
1.3.1 开发文件结构 12
1.3.2 配置程序 12
1.3.3 逻辑层 16
1.3.4 WXML 20
1.3.5 WXSS 25
1.4 搭建小程序开发环境 27
1.4.1 IDE下载 27
1.4.2 Windows系统的IDE安装 29
1.5 上手实践:第一个Hello WX程序 31
1.6 小程序新能力 34
1.6.1 个人开发者申请小程序 35
1.6.2 小程序的基本信息管理 37
1.6.3 已有公众号绑定小程序 40
1.6.4 小程序的分享和跳转新模式 41
1.7 小结 43
1.8 实践与练习 43
2 熟悉小程序开发工具 44
2.1 熟悉微信开发者工具 44
2.1.1 微信开发IDE简介 44
2.1.2 IDE调试窗口 45
2.1.3 小程序的测试与重启 49
2.1.4 小程序的调试 50
2.1.5 小程序的控制台 53
2.1.6 IDE项目窗口 55
2.1.7 项目的关闭与新建 56
2.1.8 IDE项目编辑窗口 57
2.2 小结 59
2.3 实践与练习 59
3 小程序开发基础 60
3.1 HTML入门 60
3.1.1 HTML简介 60
3.1.2 HTML的用途与结构 61
3.2 HTML基础 62
3.2.1 HTML语法基础 62
3.2.2 HTML元素 63
3.2.3 HTML属性 77
3.2.4 WXML与HTML 78
3.3 CSS入门 79
3.4 CSS基础 79
3.4.1 CSS基础语法 80
3.4.2 CSS样式 82
3.4.3 CSS框模型 95
3.4.4 CSS定位 101
3.4.5 CSS与WXSS 106
3.5 JavaScript入门 106
3.5.1 JavaScript简介 106
3.5.2 JavaScript前景 107
3.6 JavaScript基础 108
3.6.1 JavaScript注释 108
3.6.2 JavaScript变量 108
3.6.3 JavaScript数据类型 112
3.6.4 JavaScript对象 118
3.6.5 JavaScript函数 122
3.6.6 JavaScript运算符 127
3.6.7 JavaScript逻辑控制语句 128
3.7 小结 142
3.8 实践与练习 143
4 小程序开发组件 144
4.1 视图组件 144
4.1.1 视图容器(view)组件 144
4.1.2 可滚动视图区域(scroll-view) 147
4.1.3 滑动界面(swiper) 147
4.2 基础内容 149
4.2.1 小图标(icon) 149
4.2.2 文本组件(text) 150
4.2.3 进度条组件(progress) 152
4.3 表单组件 153
4.3.1 按钮组件(button) 153
4.3.2 多选择框(checkbox) 156
4.3.3 表单form 159
4.3.4 输入框组件(input) 160
4.3.5 label元素 163
4.3.6 滚动选择器picker 163
4.3.7 单选控制器(radio) 166
4.3.8 滑动选择器(slider) 168
4.3.9 开关选择器(switch) 170
4.3.10 文本框控件(textarea) 172
4.4 导航 174
4.5 媒体组件 176
4.5.1 音频组件(audio) 177
4.5.2 上手实践:音乐播放器 177
4.5.3 图片控件(image) 180
4.5.4 上手实践:相册 180
4.5.5 视频控件(video) 184
4.5.6 上手实践:带弹幕的视频播放器 184
4.6 地图 187
4.6.1 地图 187
4.6.2 上手实践:微信中的腾讯地图定位 188
4.7 画布 189
4.7.1 画布控件(canvas) 190
4.7.2 上手实践:使用canvas实现画布的绘制 190
4.8 小结 192
4.9 实践与练习 192
5 项目实战1——日记本 193
5.1 需求分析 193
5.1.1 需求确定 193
5.1.2 功能确定 194
5.1.3 系统设计 194
5.1.4 原型设计 197
5.2 具体编码 199
5.2.1 项目初始化 199
5.2.2 测试环境搭建 201
5.2.3 用户系统编码 203
5.2.4 日记系统编码 218
5.3 小结 233
5.4 实践与练习 235
6 微信提供的API解析 236
6.1 网络 236
6.1.1 发起请求 236
6.1.2 上传与下载 238
6.1.3 WebSocket 240
6.2 媒体 243
6.2.1 图片 243
6.2.2 录音 245
6.2.3 语音控制 246
6.2.4 音乐控制 248
6.2.5 视频控制 252
6.2.6 上手实践:获取本地视频和播放控制 254
6.3 文件 256
6.4 数据缓存 260
6.5 位置 264
6.5.1 获取位置 264
6.5.2 查看位置 265
6.5.3 地图组件控制 266
6.5.4 上手实践:地图控制和查看 267
6.6 设备 269
6.6.1 系统信息 269
6.6.2 网络状态 271
6.6.3 重力感应 271
6.6.4 罗盘 272
6.6.5 拨打电话 272
6.6.6 扫码 272
6.6.7 上手实践:获取所有手机信息和网络状态 273
6.7 界面 274
6.7.1 交互反馈 274
6.7.2 设置导航条 277
6.7.3 导航 278
6.7.4 动画 280
6.7.5 下拉刷新 284
6.7.6 上手实践:带有控制的动画 285
6.8 绘图 287
6.8.1 在canvas上画图 289
6.8.2 canvas坐标系 290
6.8.3 渐变 291
6.8.4 上手实践:使用canvas绘制笑脸 294
6.9 开放接口 296
6.9.1 登录 296
6.9.2 用户信息 301
6.9.3 微信支付 302
6.9.4 模板消息 303
6.9.5 客服消息 307
6.9.6 分享 315
6.9.7 获取二维码 316
6.10 小结 316
6.11 实践与练习 317
7 项目实战2——在线阅读 318
7.1 项目准备工作 318
7.1.1 项目需求分析 318
7.1.2 项目系统设计 319
7.1.3 设计1:用户模块 319
7.1.4 设计2:小说阅读模块 321
7.1.5 项目使用到的技术 321
7.2 项目服务器端编码 322
7.2.1 服务器端介绍 322
7.2.2 Laravel框架的安装与配置 322
7.2.3 服务器功能路由划分 324
7.2.4 服务器数据库搭建 325
7.2.5 服务器的配置 327
7.2.6 服务器的项目结构 328
7.2.7 服务器端登录页面的代码实现 328
7.2.8 服务器端管理主页的代码实现 330
7.2.9 服务器端管理用户的代码实现 332
7.2.10 小程序的接口文档 332
7.2.11 后台管理页面搭建 339
7.2.12 服务器端的测试 347
7.3 项目微信小程序端编码 352
7.3.1 微信小程序页面设计 353
7.3.2 搭建微信小程序项目 353
7.3.3 微信小程序“首页”菜单的代码实现 355
7.3.4 微信小程序“用户历史”菜单的代码实现 357
7.3.5 微信小程序“用户注册”页面的代码实现 361
7.3.6 微信小程序“小说阅读”页面的代码实现 367
7.4 小结 371
7.5 实践与练习 371
8 小程序新增API 372
8.1 蓝牙API 372
8.1.1 获取蓝牙适配器 372
8.1.2 关闭蓝牙模块 374
8.1.3 获取本机蓝牙状态 375
8.1.4 搜索蓝牙设备 377
8.1.5 上手实践:蓝牙管理器 386
8.2 其他新增API 389
8.2.1 获取收货地址 390
8.2.2 打开小程序设置界面 391
8.2.3 操作剪贴板 392
8.2.4 支持微信卡券 393
8.2.5 监听网络变化 395
8.3 ES 6的支持 396
8.4 小结 398
8.5 实践与练习 398
· · · · · · (收起)