| 作者 |
| 沈顺天 岂超凡 |
| 丛书名 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9782011181046 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------微信小程序项目开发实战--------------------------- 本书从实战出发,精心挑选并详解介绍了5个小程序项目案例的开发过程,从而通过项目实战的方式帮助读者理解小程序开发中的各个知识点。本书共11章,分为3篇。第1篇“入门与开发环境搭建”,带领读者创建第一个小程序,并进一步搭建小程序开发的工程化框架;第2篇“项目开发实战”,重点介绍汇率计算器、便签应用、新闻客户端、2048小游戏、网易云音乐小程序5个实际项目案例的开发;第3篇“难点解析与上线运营”,重点介绍小程序开发中常见的难点问题,以及小程序的测试、数据上报和持续运营等知识,帮助读者全面了解小程序的整个生命周期。本书内容丰富,实用性强,适合小程序开发人员及爱好者阅读,尤其适合有一定小程序开发经验的项目开发人员阅读。另外,本书也可以作为相关院校和培训机构的教材。 ---------------------------零基础学:微信小程序开发--------------------------- 本书介绍了微信小程序常用组件的使用、常用API的使用、事件的监听和处理、数据的交互与处理等,并提供了多个实战项目的开发和讲解,使读者能够快速学习微信小程序的知识点、开发流程、项目结构、开发思路,熟练使用微信小程序开发工具的各个功能面板。本书适合零基础的开发人员,以及想要学习微信小程序开发的其他从业人员。 |
| 目录 |
---------------------------微信小程序项目开发实战--------------------------- 前言 第1篇 入门与开发环境搭建 第1章 首个小程序——Hello World 2 1.1 项目创建 2 1.1.1 使用IDE创建项目 2 1.1.2 项目结构介绍 3 1.2 UI组件的使用 7 1.2.1 组件介绍 7 1.2.2 前端杂谈:attribute与property 9 1.2.3 更新页面UI 10 1.3 动画API的使用 11 1.3.1 动画API示例 12 1.3.2 对比Web动画 13 1.3.3 添加动画效果 13 1.4 本章小结 15 第2章 工程化小程序开发 16 2.1 为什么要工程化 16 2.1.1 工程化的好处 16 2.1.2 前端工程化介绍 17 2.2 一步步教你完成webpack配置 21 2.2.1 文件打包 21 2.2.2 ES 6自动编译 27 2.2.3 将测试文件从代码包中剔除 29 2.2.4 Sass/Less自动编译 30 2.2.5 小程序热更新 32 2.3 打造自己的项目模板 34 2.3.1 本地初始化项目 35 2.3.2 创建远端项目 37 2.3.3 关联本地项目到远端仓库 39 2.3.4 为模板项目打上tag标签 40 2.3.5 使用模板创建新项目 41 2.4 本章小结 42 第2篇 项目开发实战 第3章 汇率计算器 44 3.1 静态数据展示 44 3.1.1 创建项目 44 3.1.2 页面组成分析 44 3.1.3 页面搭建 46 3.2 基本功能实现 52 3.3 基础货币切换 54 3.4 保存用户设置 59 3.5 本章小结 61 第4章 便签应用 63 4.1 基本页面搭建 63 4.1.1 页面组成分析 63 4.1.2 页面搭建 64 4.2 实现便签管理 68 4.2.1 接口设计 68 4.2.2 接口实现 69 4.2.3 接口调用 71 4.3 实现纯文本便签 73 4.3.1 editor组件简介 73 4.3.2 实现便签编辑页面 74 4.4 实现富文本编辑 75 4.4.1 editor富文本API介绍 75 4.4.2 实现页面布局 76 4.4.3 实现富文本样式 77 4.5 本章小结 78 第5章 新闻客户端 79 5.1 功能分析 79 5.2 API获取及封装 80 5.2.1 获取API 80 5.2.2 封装API调用函数 80 5.3 实现基本的新闻列表 83 5.4 实现新闻话题切换 86 5.5 使用webview实现新闻详情页 89 5.6 实现新闻列表滑动切换 91 5.7 自定义新闻标签 95 5.8 本章小结 102 第6章 2048小游戏(上) 103 6.1 功能分析 103 6.2 基本布局的实现 103 6.2.1 整体页面布局 103 6.2.2 中间的game-panel布局 107 6.3 用户手势检测 110 6.4 滑动逻辑的实现 114 6.4.1 抽取Board类用于管理棋盘 114 6.4.2 实现初始化棋盘逻辑 116 6.4.3 实现初始化棋盘滑动逻辑 117 6.5 方块合并及新方块生成的实现 121 6.5.1 实现方块合并 121 6.5.2 新方块生成 123 6.6 游戏状态管理 125 6.6.1 游戏分数计算 125 6.6.2 游戏结束处理 127 6.6.3 历史最高分记录 130 6.7 UI优化 132 6.8 本章小结 133 第7章 2048小游戏(下) 134 7.1 canvas的使用 134 7.1.1 搭建canvas测试页面 134 7.1.2 在小程序中调用canvas接口 136 7.2 canvas绘图API的使用 138 7.2.1 矩形绘制API 138 7.2.2 path的使用 140 7.2.3 曲线绘制 140 7.3 在canvas中实现动画效果 143 7.4 使用canvas绘制2048静态页面 146 7.4.1 修改棋盘布局 146 7.4.2 改造Board类 147 7.4.3 绘制棋盘静态画面 148 7.5 绘制动画效果 153 7.5.1 绘制方块移动动画 154 7.5.2 绘制新方块出现动画 156 7.6 本章小结 156 第8章 音乐小程序(上) 157 8.1 准备工作 157 8.1.1 启动后端服务 157 8.1.2 创建小程序前端项目 158 8.2 主页面基本框架搭建 160 8.2.1 静态顶部tab的实现 160 8.2.2 tab动态切换的实现 162 8.3 “个性推荐”tab 164 8.3.1 搭建基本结构 165 8.3.2 “推荐歌单”部分的实现 167 8.3.3 “最新音乐”部分的实现 173 8.3.4 “推荐MV”和“主播电台”部分的实现 176 8.4 “歌单”tab 179 8.4.1 全部歌单列表实现 179 8.4.2 切换歌单分类 185 8.5 “主播电台”tab 190 8.5.1 组件创建 190 8.5.2 实现“精彩节目”页面 191 8.5.3 实现“推荐电台”页面 193 8.5.4 实现热门电台部分 196 8.6 “排行榜”tab 198 8.6.1 组件创建 198 8.6.2 数据获取 198 8.6.3 排行榜列表的实现 200 8.7 本章小结 201 第9章 音乐小程序(下) 202 9.1 音乐播放页 202 9.1.1 页面创建 203 9.1.2 静态页面展示 204 9.1.3 音频数据获取 208 9.1.4 音乐播放控制 210 9.1.5 唱片机效果实现 214 9.1.6 音乐进度组件 216 9.1.7 歌词组件 222 9.2 歌单详情页 230 9.2.1 页面创建 230 9.2.2 数据获取 230 9.2.3 静态数据展示 232 9.2.4 跳转逻辑实现 239 9.2.5 排行榜详情页 240 9.3 评论页 240 9.3.1 页面创建 240 9.3.2 数据拉取 241 9.3.3 数据展示 242 9.4 MV页 251 9.4.1 页面创建 251 9.4.2 数据获取 252 9.4.3 基本布局及MV播放 254 9.4.4 “详情”tab展示 256 9.4.5 “评论”tab展示 257 9.4.6 “相关MV”tab展示 258 9.5 用户详情页 259 9.5.1 页面创建 259 9.5.2 数据获取 260 9.5.3 个人信息展示部分 262 9.5.4 歌单列表部分 265 9.6 电台详情页 267 9.6.1 页面创建 267 9.6.2 数据获取 268 9.6.3 电台信息展示部分 270 9.6.4 节目列表部分 272 9.7 电台节目播放页 273 9.7.1 页面创建 273 9.7.2 数据获取 274 9.7.3 电台信息展示部分 275 9.8 本章小结 279 第3篇 难点解析与上线运营 第10章 小程序开发难点解析 282 10.1 多图列表页面性能问题 282 10.1.1 问题分析 282 10.1.2 如何解决 285 10.1.3 总结思路 288 10.2 代码包的大小限制 289 10.2.1 如何减少代码包的大小 289 10.2.2 为什么存在该限制 290 10.3 图片懒加载问题 291 10.3.1 分析解决方案 291 10.3.2 实现一个可复用的懒加载组件 292 10.3.3 测试使用懒加载组件 295 10.4 页面数量限制问题 297 10.4.1 分析目前的问题 298 10.4.2 实现页面数量突破限制 299 10.4.3 测试效果 302 10.5 本章小结 304 第11章 小程序上线及运营 305 11.1 数据埋点 305 11.1.1 自定义平台数据上报 305 11.1.2 小程序接口数据上报 307 11.2 小程序测试 310 11.2.1 单元测试 310 11.2.2 UI适配 316 11.2.3 旁路测试 318 11.2.4 错误上报 320 11.3 小程序运营 321 11.3.1 提交审核 321 11.3.2 提升用户黏性 323 11.3.3 广告接入 324 11.4 本章小结 327 ---------------------------零基础学:微信小程序开发--------------------------- 前言 第一篇 基础知识 第1章 认识微信小程序 1 1.1 微信小程序介绍 1 1.1.1 什么是微信小程序 1 1.1.2 微信小程序的发展历史 1 1.1.3 微信小程序的功能和应用场景 2 1.2 微信小程序开发准备 2 1.2.1 基础准备 2 1.2.2 开发准备 5 1.3 微信小程序开发工具介绍 6 1.3.1 项目创建 6 1.3.2 项目删除 8 1.3.3 开发工具界面介绍 8 1.3.4 项目调试介绍 9 1.4 项目实战:“Hello World”项目 12 1.5 本章小结 12 第2章 微信小程序项目结构配置 13 2.1 文件介绍 13 2.1.1 .wxml后缀的结构文件 13 2.1.2 .wxss后缀的样式文件 13 2.1.3 .js后缀的逻辑文件 13 2.1.4 .json后缀的配置文件 14 2.1.5 项目结构推荐配置 14 2.2 微信小程序配置 15 2.2.1 样式配置 15 2.2.2 其他配置 17 2.2.3 页面配置 17 2.3 生命周期函数 18 2.3.1 小程序的生命周期函数 19 2.3.2 各页面的生命周期函数 19 2.4 数据渲染 19 2.4.1 数据绑定 19 2.4.2 条件渲染 20 2.4.3 列表渲染 20 2.5 事件 21 2.6 模板使用 22 2.7 引用 23 2.8 项目实战:通信录 23 2.9 本章小结 25 第3章 微信小程序UI组件 27 3.1 基础视图组件 27 3.1.1 view视图容器 27 3.1.2 scroll-view滚动视图容器 28 3.1.3 image图片容器 30 3.1.4 text文本组件 32 3.1.5 cover-view覆盖视图容器 32 3.1.6 cover-image覆盖图片容器 32 3.1.7 icon图标组件 32 3.2 高级视图组件 33 3.2.1 swiper轮播容器 33 3.2.2 progress进度条组件 35 3.2.3 slider滑动选择器组件 36 3.2.4 switch开关组件 37 3.2.5 map地图组件 38 3.3 表单组件 42 3.3.1 form表单组件 42 3.3.2 button按钮组件 43 3.3.3 checkbox多选项组件 44 3.3.4 radio单选项组件 45 3.3.5 label扩展组件 46 3.3.6 input输入框组件 47 3.3.7 textarea多行输入框组件 49 3.3.8 picker滚动选择器组件 50 3.3.9 picker-view嵌入式滚动选择器组件 56 3.4 媒体组件 58 3.4.1 camera相机组件 59 3.4.2 audio音频组件 60 3.4.3 video视频组件 61 3.5 画布组件canvas 64 3.6 项目实战:计算器 65 3.7 本章小结 73 第4章 微信小程序API 74 4.1 页面导航 74 4.1.1 wx.navigateTo 74 4.1.2 wx.navigateBack 75 4.1.3 wx.switchTab 75 4.1.4 wx.redirectTo 75 4.1.5 wx.reLaunch 76 4.2 网络请求 76 4.2.1 发送网络请求 76 4.2.2 文件的上传、下载 77 4.3 文件的操作 79 4.3.1 文件保存与打开 79 4.3.2 文件信息获取 80 4.3.3 文件管理者 81 4.4 图片的操作 81 4.4.1 图片选择 81 4.4.2 图片预览 82 4.4.3 图片信息获取 83 4.4.4 图片保存 83 4.5 交互反馈 84 4.5.1 消息提示框 84 4.5.2 加载提示框 85 4.5.3 模态弹窗 86 4.5.4 下弹操作菜单 86 4.6 获取用户信息 87 4.6.1 用户登录 87 4.6.2 用户信息 88 4.6.3 用户位置 90 4.6.4 用户授权 91 4.7 设备信息API 92 4.7.1 获取设备信息 92 4.7.2 屏幕亮度 93 4.7.3 获取设备电量 93 4.7.4 设备剪切板 94 4.7.5 设备方向 94 4.7.6 设备网络 95 4.7.7 拨打电话 96 4.7.8 扫描二维码 96 4.8 其他常用的API 97 4.8.1 微信支付 97 4.8.2 转发 98 4.8.3 下拉刷新 99 4.9 数据缓存 100 4.10 项目实战:九宫格选图 101 4.11 本章小结 107 第二篇 实战案例 第5章 新闻阅读 109 5.1 需求描述 109 5.2 设计思路 109 5.2.1 首页描述 109 5.2.2 视频页描述 109 5.2.3 我的描述 110 5.3 准备工作 111 5.4 页面搭建 113 5.4.1 首页页面搭建 113 5.4.2 视频页面搭建 117 5.4.3 我的页面搭建 120 5.5 逻辑搭建 120 5.5.1 首页逻辑 120 5.5.2 视频逻辑 123 5.5.3 我的逻辑 125 5.6 项目小结 125 第6章 单车共享 126 6.1 需求描述 126 6.2 设计思路 126 6.2.1 首页描述 126 6.2.2 故障申报描述 127 6.2.3 我的描述 127 6.3 准备工作 128 6.4 页面搭建 129 6.4.1 首页页面搭建 129 6.4.2 我的页面搭建 132 6.4.3 报修页面搭建 135 6.5 逻辑搭建 140 6.5.1 页面跳转逻辑 140 6.5.2 首页逻辑 141 6.5.3 车辆故障逻辑 143 6.6 数据获取 148 6.7 项目小结 149 第7章 视频快讯 151 7.1 需求描述 151 7.2 设计思路 151 7.2.1 首页描述 151 7.2.2 短视频描述 151 7.2.3 频道描述 151 7.2.4 我的描述 153 7.3 准备工作 154 7.4 页面搭建 155 7.4.1 首页页面搭建 156 7.4.2 短视频页面搭建 160 7.4.3 频道页面搭建 165 7.4.4 我的页面搭建 169 7.5 逻辑搭建 172 7.5.1 首页逻辑 173 7.5.2 短视频逻辑 174 7.5.3 频道逻辑 176 7.5.4 我的逻辑 177 7.6 项目优化 179 7.7 项目小结 181 第8章 云音乐 182 8.1 需求描述 182 8.2 设计思路 182 8.2.1 发现描述 182 8.2.2 我的描述 182 8.2.3 私人FM描述 183 8.2.4 每日推荐描述 183 8.2.5 歌单描述 183 8.2.6 排行榜描述 183 8.2.7 歌单列表描述 185 8.2.8 音频播放描述 185 8.3 准备工作 186 8.4 页面搭建 188 8.4.1 发现页面搭建 188 8.4.2 我的页面搭建 201 8.4.3 私人FM页面搭建 203 8.4.4 每日推荐页面搭建 205 8.4.5 歌单页面搭建 209 8.4.6 排行榜页面搭建 212 8.4.7 歌单列表页面搭建 214 8.4.8 音频播放页面搭建 219 8.5 逻辑搭建 221 8.5.1 发现逻辑 223 8.5.2 每日推荐逻辑 228 8.5.3 歌单逻辑 230 8.5.4 排行榜逻辑 231 8.5.5 歌单列表逻辑 233 8.5.6 音频播放逻辑 235 8.6 项目小结 239 第9章 商城购物 240 9.1 需求描述 240 9.2 设计思路 240 9.2.1 首页描述 240 9.2.2 分类描述 240 9.2.3 购物车描述 240 9.2.4 我的未登录描述 241 9.3 准备工作 243 9.4 页面搭建 244 9.4.1 首页页面搭建 244 9.4.2 分类页面搭建 250 9.4.3 购物车页面搭建 254 9.4.4 我的未登录页面搭建 259 9.5 逻辑搭建 264 9.5.1 首页逻辑 264 9.5.2 分类逻辑 266 9.5.3 我的未登录逻辑 267 9.5.4 购物车逻辑 269 9.6 项目小结 275 第10章 外卖配送 276 10.1 需求描述 276 10.2 设计思路 276 10.2.1 首页描述 276 10.2.2 大类型描述 276 10.2.3 为你优选描述 277 10.2.4 商铺详情描述 277 10.3 准备工作 278 10.4 页面搭建 279 10.4.1 首页页面搭建 280 10.4.2 大类型页面搭建 291 10.4.3 为你优选页面搭建 295 10.4.4 商铺详情页面搭建 297 10.5 逻辑搭建 311 10.5.1 首页逻辑 311 10.5.2 大类型逻辑 315 10.5.3 为你优选逻辑 318 10.5.4 商铺详情逻辑 319 10.6 项目小结 325 |