微信小程序开发实战 第5章 API应用案例(上)

合集下载

微信小程序开发实战 第6章 API应用案例(下)

微信小程序开发实战  第6章 API应用案例(下)

✎ 6.1 【案例5】模拟时钟
4 钟表页面绘制
clock.js
Page({ width: 0, height: 0 ,// 初始化宽高 onLoad: function() { wx.getSystemInfo({ }) }, // 获取系统的宽高 timer:null, onReady: function() { …… function draw(){ } // 绘制函数 function drawClock(ctx, radius) {} // 绘制表盘部分 function drawHand(ctx, radius) {} // 绘制指针部分 }
2 前导知识
第5步:移动画笔坐标位置,绘制(左眼圆圈)
ctx.moveTo(85, 80) ctx.arc(80, 80, 5, 0, 2 * Math.PI, true)
第6步:移动画笔坐标位置,绘制(右眼圆圈)
ctx.moveTo(125, 80) ctx.arc(120, 80, 5, 0, 2 * Math.PI, true)
✎ 6.1 【案例5】模拟时钟
2 前导知识
canvas用法:
创建canvas.wxml文件。
<canvas canvas-id="myCanvas"></canvas>
canvas组件默认样式如下。
canvas { width: 300px; height: 150px; display: block; position: relative;
},
✎ 6.2 【案例6】罗盘动画
5 单击按钮操作罗盘
④ 编写skew()函数,实现对 X、Y 轴坐标进行倾斜
translate: function() { animation.translate(Math.random() * 100 - 50, Math.random() * 100 - 50).step() this.setData({ animation: animation.export() })

《微信小程序开发实战教程》第5章

《微信小程序开发实战教程》第5章
})
5.2.1 navigator组件路由
12
单击“跳转到新页面”链接,运行结果 如图所示,注意鼠标指针的位置,该页 面中包含“返回”按钮。
5.2.1 navigator组件路由
13
单击“在当前页打开”链接,运行结果 如图所示,注意鼠标指针的位置,该页 面中包含“主页”按钮,控制台会输出 “redirect”。
学 习 进 步!
5.2.1 navigator组件路由
14
单击“切换Tab”链接,运行结果如图所 示。注意,此处使用了open-type= "switchTab",当一个页面和底部导航绑 定后,只能使用switchTab方式进行切换, 而没有和底部导航绑定的页面,要使用 除switchTab之外的方式进行页面跳转。
单击“redirectTo”链接,该页面中包含“主页”按钮。 redirectTo方法中的URL为“../p3/p3?title=2”,所以输 出了“2”。
单击“reLaunch”链接,关闭所有页面,打开应用内的某 个页面。
单击“switchTab”链接,切换到底部导航绑定的页面 “p2”。
微信小程序开发实战教程(PHP+Laravel+MySQL)(微课版)
1 在组件中绑定一个事件处理函数,如bindtap,当用户单击该组 件的时候,会在该页面对应的Page中找到相应的事件处理函数。
2 在相应的page.js中编写相应的事件处理函数。
5.1 事件
4
冒泡事件
当一个组件上的事件被触发后,该事件会向父节点传递。
touchstart:手指触摸动作开始。 touchmove:手指触摸后移动。 touchcancel:手指触摸动作被打断,如来电提醒、弹窗等。 touchend:手指触摸动作结束。 tap:手指触摸后马上离开。 longpress:手指触摸后,超过350ms再离开,如果指定了事件回调函数并触发了这个事件,

《小程序,巧应用:微信小程序开发实战》读书笔记模板

《小程序,巧应用:微信小程序开发实战》读书笔记模板

2.3.1 MINA框架 2.3.2目录结构 2.3.3逻辑层 2.3.4视图层 2.3.5数据层
2.4.1预览、上传、审核与发布 2.4.2加载运行
2.5.1入口与界面 2.5.2与HTML 5应用开发的差异 2.5.3的最佳应用场景 2.5.4对企业、开发者的意义与影响 2.5.5开发者角色与技能要求
7.2流媒体转码与 播放——视频点播
7.1文件上传与下 载——小相册
7.3互动——高冷 机器人
7.4 LBS应 用——周边信
息点
7.5 WebSocket高 级应用——远 程控制设备
7.1.1功能详解 7.1.2程序结构 7.1.3程序细化 7.1.4程序体验
7.2.1功能详解 7.2.2程序目录结构 7.2.3程序细化
A.3投诉与处罚规范
A.4遵守当地法律监 管
A.5平台运营规 范免责声明
A.6动态文档
B.2服务类目审核
B.1账号基本信息
B.3整体审核规则
精彩摘录
这是《小程序,巧应用:微信小程序开发实战》的读书笔记模板,可以替换为自己的精彩内容摘录。
作者介绍
这是《小程序,巧应用:微信小程序开发实战》的读书笔记模板,暂无该书作者的介绍。
4.2.1 icon 4.2.2 text 4.2.3 progress
4.3.1 button 4.3.2 checkbox-group 4.3.3 checkbut 4.3.6 label
4.4.1 action-sheet 4.4.2 modal 4.4.3 toast 4.4.4 loading
2.1理解
2.3进一步了解开 发框架
2.4的发布与使 用
2.5深入理解的 应用场景

《微信小程序企业开发实战》课程教学大纲

《微信小程序企业开发实战》课程教学大纲

《微信小程序企业开发实战》课程教学大纲学分:3学分学时:45学时(其中:讲课学时:30 上机学时:15 )适用专业:通识选修课、专业拓展课先修课程:计算机基础、计算机网络、HTML5+CSS3+JavaScript一、课程的性质与目标《微信小程序开发实战》是专注于微信小程序开发的Web前端教材,涉及微信小程序框架、文件配置、WXML语法、WXSS布局、WXS语法、页面组件、应用接口API、云开发模式、第三方组件的使用等。

通过本课程的学习,学生能够理解微信小程序的实质,掌握微信小程序开发的基本技能,快速高效的开发微信小程序。

提高学生对计算机科学与技术的兴趣,促进学生能在未来的学习和工作中,使用“计算机思维”来解决实际问题,全面提高学生的综合素质。

二、课程设计理念与思路课程设计理念:高等职业教育不仅注重对专业知识和技能的传授,也注重对学生综合素质的培养,不局限于个人选择的专业,有助于个人潜力能够得到最大限度的发挥。

在全球云计算和移动互联的产业背景下,在高等教育的通识教育中增加有关计算机技术基础知识与能力的课程,有助于非计算机专业大学生综合素质的提高。

课程设计思路:微信小程序企业开发实战作为一门选修课,让学生把一门程序设计语言掌握到实用的程度较有难度。

本课程并非简单介绍微信小程序开发的理论内容,而是将理论讲解与实际操作相结合,其中所涉及的大部分知识点适用于所有编程的基础知识,如变量、运算符、选择语句和标签概念等。

可潜移默化地培养学生程序化、系统化的思维模式,让学生能够使用逻辑思维解决问题。

同时,培养学生的自学能力。

软件技术的发展日新月异,教材不能做到和语言同步,互联网的存在为自学掌握一门技能提供了便捷,可以让学生自己分析问题、动手编程和,在此过程中,学生上网查阅相关资料,能够更新知识,并逐渐具备独立研究的能力。

三、教学条件要求操作系统:Windows 10开发工具:微信开发者工具四、课程的主要内容及基本要求第一章微信小程序简介第二章微信开发者工具第三章微信小程序起步第四章小程序的配置文件第五章 WXML语法基础第六章 WXSS样式处理第七章 WXS语法第八章小程序中的JavaScript第九章微信小程序核心组件第十章微信小程序核心 API第十一章微信小程序开放能力(可选)第十二章微信小程序云开发(可选)第十三章自定义组件与第三方 UI 组件库(可选)第十四章第十五章项目实战:电影之家小程序(可选)项目实战:美妆商城小程序(可选)第十六章五、学时分配注:可选章节未计入合计课时。

《微信小程序开发实战》读书笔记思维导图PPT模板下载

《微信小程序开发实战》读书笔记思维导图PPT模板下载

任务2.1 详解配 置文件
任务2.2 介绍微 信小程序App和 Pag...
任务2.3 构建用 户界面
任务2.4 项目实 战:祥云天气
任务2.5 添加列 表渲染
任务2.6 添加条 件渲染
任务2.7 添加事 件
本章作业
第3章 常用组件
任务3.1 掌握基 本组件的使用
任务3.2 掌握视 图容器组件的使
06 第3章 常用组件
07 第4章 常用API
目录
08
第5章 综合案例:豆 瓣电影
09
第6章 使用WePY开 发微信小程序
010
第7章 微信小游戏开 发
011
第8章 使用Cocos Creator开...
微信小程序以一种极度轻量化、无处不在、用完即走的方式全面连接到了用户与服务,在给用户带来更好体 验的同时,大幅降低了自身开发的门槛和成本。本书不局限于原生微信小程序开发,还涉及微信生态技术圈中的 WePY框架应用、微信小游戏开发、使用Cocos Creator开发小游戏等内容,是读者从微信小程序入门到实战开发 的极佳读物。 本书实用性强、示例丰富、侧重实战、与新技术结合紧密,可作为刚接触或即将接触微信小程序 的开发者的指导用书,也适合有微信小程序开发经验,但还需进一步提升自我能力的开发者使用。
任务6.1 使用 WePY创建项目
任务6.2 学习 WePY框架的基础
任务6.3 学习 WePY框架的核心
任务6.4 使用 WePY开发小猪基 金
任务6.6 实现小 猪基金详情页
任务6.5 使用 wx-charts实现
图...
本章作业
第7章 微信小游戏开发
任务7.1 介绍微 信小游戏
任务7.2 学习微 信小游戏开发基

5.文件操作API

5.文件操作API
filePath要写入的文件路径 (本地路径),data要写入的文本或二进制数据,encoding指定写入文件的字符编码; (29)Stats描述文件状态的对象,Stats.isDirectory()判断当前文件是否一个目录,Stats.isFile()判断当前文件是否
一个普通文件;
微信小程序简明开发教程
必备的微信小程序API
文件操作API
➢ FileSystemManager文件管理器 (13)FileSystemManager.readFile(Object object)读取本地文件内容; (14)FileSystemManager.readFileSync(string filePath, string encoding, string position, string length)同步版本读取文件内容,filePath要读取的文件
(1)FileSystemManager.access(Object object)判断文件/目录是否存在; (2)FileSystemManager.accessSync(string path)同步版本要判断是否存在的文件/目录路径 (本地路径); (3)FileSystemManager.appendFile(Object object) 在文件结尾追加内容; (4)FileSystemManager.appendFileSync(string filePath, string|ArrayBuffer data, string encoding)同步版本在文件结尾追加内容,filePath要追加内
递归删除目录; (20)FileSystemManager.saveFile(Object object)保存临时文件到本地; (21)FileSystemManager.saveFileSync(string tempFilePath, string filePath)同步版本保存临时文件到本地,tempFilePath临时存储文件路径 (本地

《微信小程序开发实战》读书笔记PPT模板思维导图下载

《微信小程序开发实战》读书笔记PPT模板思维导图下载
4.2 【任 务1】邀 请函页面
04
4.3 【任 务2】照 片页面
05
4.4 【任 务3】美 好时光页 面
06
4.5 【任 务4】婚 礼地】 宾客信息页面
课后习题
第5章 API应用案例(上)
【教学导航】
5.1 【案例1】用 户登录
5.2 【案例2】个 人中心
5.3 【案例3】天 气预报查询
第8章 综合项目—— 点餐系统
08
第7章 小程序开发框 架
本书是针对Web前端开发人员编写的一本快速掌握微信小程序开发的教程。本书通过通俗易懂的语言、丰 富实用的案例,讲解微信小程序的原理和开发技术。全书共8章,第1、2章主要讲解微信小程序的入门知识,介 绍微信小程序的优势和发展前景,通过简单易懂的“比较数字大小”案例帮助读者快速熟悉开发流程;第3、4章 分别讲解“音乐”和“婚礼邀请函”小程序项目,通过这两章的学习,读者可以掌握小程序的布局和各种组件的 使用;第5、6章讲解微信小程序的各种API,通过8个典型的案例对这些API的使用进行演示;第7章讲解微信小 程序开发框架,涵盖了微信小程序模块开发、第三方框架(mpvue、WePY)和UI库(WeUI);第8章讲解一 个综合项目—点餐系统,详细讲解项目从需求分析到代码实现的全过程。本书适合作为高等院校本、专科计算机 相关专业的教材,也可作为广大计算机编程爱好者的参考书。
内容提要
第1章 微信小程序入门
【教学导航】
1.1 初识微信小 程序
1.2 开发环境搭 建
1.3 小程序的开 发体验
本章小结
1.4 团队开发与 项目上线
课后习题
第2章 微信小程序开发基础
01
【教学导 航】
02
2.1 【案 例1】比 较数字大 小

微信小程序 API

微信小程序 API

微生物在食品工业中的应用
① 共同发酵法生产工艺
共同发酵法双歧杆菌酸奶的生产工艺流程如下:
原料乳 ↓
标准化 ↓
调配←(蔗糖10%+葡萄糖2%) ↓
均质(15~20MPa) ↓
杀菌(115℃,8min) ↓
冷却(38~40℃) ↓
适量维生素C→接种←(双歧杆菌6%、嗜 热链球菌(保加利亚乳杆菌)3%)
微生物在食品工业中的应用
(4)乙醇的产生 乳脂明串珠菌在异型乳酸发酵中可形 成少量的乙醇,它也是发酵乳制品中重要的风味物质之一, 而乳脂明串珠菌有较强的乙醇脱氢酶活性,能将乙醛转变为 乙醇。故也称风味菌、香气菌或产香菌。在酸奶酒中的乙醇 则是由酵母菌产生的,不同乳制成的酸奶酒由不同的酵母菌 产生乙醇。如牛奶酒由克菲尔酵母和克菲尔圆酵母产生,而 马奶酒则是由乳酸酵母产生的。
微生物在食品工业中的应用
② 共生发酵法生产工艺 双歧杆菌、酵母共生发酵乳的生产工艺流程如下:
原料乳
↓ 标准化≥9.5% ↓
蔗糖10%+葡萄糖2%→调配 ↓ 均质(15~20MPa) ↓ 杀菌(115℃,8min) ↓
冷却(26~28℃) ↓
↓ 温(37℃) ↓ (37℃,5h) ↓ (10℃左右)
微生物在食品工业中的应用
5.1.2.1 酸乳
酸乳是新鲜牛乳经过乳酸菌发酵后制成的发酵乳饮料。 根据其发酵方式可分为凝固型、搅拌型和饮料型三种。
(1)乳酸菌种选择及生产工艺 菌种的选择对发酵剂的 质量起着重要的作用,应根据不同的生产目的选择适当的菌 种,要以产品的主要技术特性,如产香、产酸、产生黏性物 质及蛋白水解能力等作为发酵剂菌种的选择依据。通常使用 两种或两种以上菌种的混合使用,相互产生共生作用。大量 的研究证明,混合使用的效果比单一使用的效果好。

第4章 微信小程序常用API(上)

第4章 微信小程序常用API(上)
bindscrolltoupper bindscrolltolower
bindscroll
类型 boolean eventhandle eventhandle eventhandle
说明 在设置滚动条位置时是否使用动画过渡,默认值 为false 滚动到顶部/左边时触发的事件 滚动到底部/右边时触发的事件 滚动时触发的事件
内容区域
播放器区域
案例分析
下面对标签栏区域、内容区域和播放器区域分别进行介绍,具体如下。 ① 标签栏区域:该区域有音乐推荐、播放器和播放列表3个标签按钮,通过点击标签按
钮可以进行标签页的切换。 ② 内容区域:通过左右滑动可以实现音乐推荐、播放器和播放列表3个标签页的切换。
这3个标签页的具体说明如下。 音乐推荐:用于向用户推荐一些歌曲。 播放器:用于显示当前播放音乐的信息、专辑封面、播放进度和时间。其中,音
知识储备
3. <include>标签
目录/Contents
01
【案例4-1】音乐播放器
02
【案例4-2】录音机
03
【案例4-3】头像上传下载
04
【案例4-4】模拟时钟
01 【案例4-1】音乐播放器
案例分析
标签栏区域
“音乐播放器”微信小程序的页面由上、中、下3个 部分组成,这3个部分分别是标签栏区域、内容区域 和播放器区域。“音乐播放器”微信小程序的页面 效果如右图所示。
说明 允许横向滚动,默认值为false 允许纵向滚动,默认值为false 设置竖向滚动条的位置,默认值为空 设置横向滚动条的位置,默认值为空 当前可在哪个方向滚动,则在哪个方向滚动到该 元素。值为某子元素id(id不能以数字开头)
知识储备

微信小程序开发图解案例第5章

微信小程序开发图解案例第5章
目录
contents
5.1 微信小程序设计
5.2 微信小程序问答
5.1.1 突出重点,减少干扰项
每个页面都应有明确的重点,以便于用户每进入一个新页面的时候都能快速地理解页面内 容。在确定了重点的前提下,应尽量避免页面上出现其它与用户的决策和操作无关的干扰因素。
5.1.2 主次动作区分明显
在一个界面上有多个按钮的时候,按钮设计有主次之分,并且区分明显,让用户看到后就 知道他应该能做什么,该怎么做。
5.1.9 表单填写友好提示
用户在填写表单时,输入格式或者
内容不符合表单填写规则,需要给用户 及时反馈表单填写问题,可以在表单顶
部告知错误原因,并标识出错误字段提
示用户修改。如图所示。
目录
contents
5.1 微信小程序设计
5.2 微信小程序问答
5.1.9 表单填写友好提示
1. 如何将元素固定在界面,不随着界面
使用 page 标签选择器,可以修改顶层节点的样式。
的滚动? 如果界面底部有四个导航菜单:筛
选、出发时间、旅行时间、显示价格,
把它固定在界面底部,如图所示。
5.1.9 表单填写友好提示
2. 怎么样获取用户在表单组件输入的内容?
能够获取用户输入的组件,需要使用组件的属性bindchange将用户的输入内容同步到
AppService。 3. 为什么脚本内不能使用window等对象?
使用模态的加载。如图所示。
5.1.6 弹出式操作结果
弹出式提示( Toast )适用于轻量
级的成功提示,1.5秒后自动消失,并不 打断流程,对用户影响较小,适用于不
需要强调的操作提醒,例如成功提示。
特别注意该形式不适用于错误提示,因 为错误提示需明确告知用户,因而不适 合使用一闪而过的弹出式提示。如图所 示。

微信小程序开发 5-2 教案-基础内容组件[2页]

微信小程序开发 5-2 教案-基础内容组件[2页]
1.基础内容组件分类
基础内容组件包括icon图标组件、text文本组件、rich-text富文本组件、progress进度条组件。
2、icon图标组件属性
3、text文本组件属性
4、rich-text富文本组件属性
5、progress进度条组件属性
(4)列举4种进度条的情况,包括进度条右侧显示百分比、线条宽度为20px的进度条、自定义颜色的进度条、带有动画效果的进度条。
第5章 小程序组件
任务5.2 基础内容组件
课时内容
基础内容பைடு நூலகம்件
课时
12
教学目标
了解什么是基础内容组件及其作用;
掌握基础内容组件分类;
掌握icon图标组件、text文本组件、rich-text富文本组件、progress进度条组件的属性与应用方法
教学重难点
掌握icon图标组件、text文本组件、rich-text富文本组件、progress进度条组件的属性与应用方法的属性与应用方法
教学设计
1.教学思路:介绍什么是基础内容组件及其作用,通过多媒体演示和实机操作讲解微信小程序icon图标组件、text文本组件、rich-text富文本组件、progress进度条组件的属性与应用方法与实现;通过小程序实战巩固基础知识。
2.教学手段:多媒体+计算机
3.教学资料:教材、多媒体课件
教学内容
本任务主要介绍小程序基础内容组件共有4种:icon图标组件、text文本组件、rich-text富文本组件、progress进度条组件的属性与应用。本节的学习目标:
(1)了解什么是基础内容组件及其作用;
(2)掌握基础内容组件分类;
(3)掌握icon图标组件、text文本组件、rich-text富文本组件、progress进度条组件的属性与应用方法

《微信小程序开发与实战》课后习题答案

《微信小程序开发与实战》课后习题答案

微信小程序企业开发实战课后习题答案答案第一章 微信小程序简介1.填空题(1)轻量(2)微信公众号、微信小程序、企业微信(3)即用即走,无须下载第二章 微信开发者工具1、填空题(1)订阅号、服务号、小程序、企业微信(2)小程序(3)WXML、WXSS、JSON、JS2、选择题(1)C(2)B第三章 微信小程序起步1.填空题(1)WXML、WXSS、JSON、JS(2)渲染层、逻辑层(3)App()、Page()、Component()2、选择题(1)D(2)D第四章 小程序的配置文件 1、填空题(1)app.json(2)style(3)page.json(4)black2、选择题(1)D(2)B(3)C第五章 WXML语法基础 1、填空题(1)Mustache(2)wx:if、wx:elif、wx:else (3)import、include2、选择题(1)B第六章 WXSS样式处理 1、填空题(1)rpx(2)px、rpx、rem(3)import2、选择题(1)B第七章 WXS语法1、填空题(1)WeiXin Script(2)module、src(3)constructor、typeof2、选择题(1)C(2)D(3)C第八章 WXS语法1、填空题(1)MINA(2)View视图层、App Service逻辑层、Native系统层(3)ECMAScript、小程序框架、小程序API2、选择题(1)A(2)B(3)C第九章 微信小程序核心组件1、填空题(1)view(2)表单(3)camera、mode(4)longitude、latitude2、选择题(1)D(2)B(3)B第十章 微信小程序核心API1、填空题(1)HTTPS(2)10(3)enablePullDownRefresh2、选择题(1)D(2)D(3)A第十一章 微信小程序开放能力1、填空题(1)wx.getUserProfile()(2)wx.requestPayment()(3)onAddToFavorites()、onShareAppMessage()、onShareTimeline() 2、选择题(1)A(2)D第十二章 微信小程序云开发1、填空题(1)云数据库、云存储、云函数(2)小程序管理员、云开发管理员、云开发开发者(3)非关系型(4)wx.cloud.callFunction()2、选择题(1)A(2)D(3)D第十三章 第三方UI组件库1、填空题(1)WXML、WXSS、JSON、JS(2)component、true(3)<slot>2、选择题(1)C(2)B。

微信小程序开发实战 第5章 API应用案例(上)

微信小程序开发实战  第5章 API应用案例(上)

✎ 5.1 【案例1】用户登录
2 前导知识
获取缓存数据示例代码如下:
// 获取数据缓存 wx.getStorage({
key: 'key', success: res => {
console.log(res.data) }, fail: res => {} })
// 本地缓存中指定的 key // 接口调用成功的回调函数
✎ 5.1 【案例1】用户登录
5 检查用户是否已经登录
进入app.js中编写checkLogin()函数,判断token是否存在。
checkLogin: function(callback) { var token = this.globalData.token if (!token) { token = wx.getStorageSync('token') // 从数据缓存中获取token if (token) {this.globalData.token = token} else { callback({ is_login: false }) return }} // 如果token存在,请求服务器,判断是否有效
},
✎ 5.1 【案例1】用户登录
4 实现用户登录
请求login登录接口。
url: 'http://127.0.0.1:3000/login', method: 'post', data: { code: res.code }, success: res => { console.log('token: ' + res.data.token)
const wx = {

微信小程序开发五:案例实践

微信小程序开发五:案例实践
<!--index.wxml--> <view class="container">
<view class="header"> <view class="title">{{weather.results[0].currentCity}}</view> <view class="desc">{{weather.date}}</view>他部分。然后调用 wx.request 请求天气预报数据。 接下来把上述接口组合起来,组成给应用层的接口,相应代码如下所示。
function loadWeatherData(callback) { getLocation(function(success, latitude, longitude){ getWeather(latitude, longitude, function(weatherData){ callback(weatherData); }); });
博客园 用户登录 代码改变世界 密码登录 短信登录 忘记登录用户名 忘记密码 记住我 登录 第三方登录/注册 没有账户, 立即注册
微信小程序开发五:案例实践 5.1天 气 预 报
在这一节中,我们将开市名称查询天气,而 本节中使用坐标进行查询。 在小合法域名中。如图21-7所示。
由于项目只有一个页面,所以不需要底部tab。另外设置网络请求时间为10秒,并且启用调试模式。 逻辑层实现 首先在common.js中使用获取用户当前地理位置接口获取用户的坐标地址,坐标类型选择gcj02。 //获取当前位置坐标
function getLocation(callback) { wx.getLocation({ type: 'gcj02', success: function(res) { callback(true, titude, res.longitude); }, fail: function() { callback(false); } })
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

说明
✎ 5.1 【案例1】用户登录
2 前导知识
保存数据缓存示例代码如下:
// 保存数据缓存 wx.setStorage({
key: 'key', data: 'value', success: res => {}, fail: res => {} })
// 本地缓存中指定的key // 需要存储的内容(支持对象或字符串) // 接口调用成功的回调函数 // 接口调用失败的回调函数
const wx = {
appid: '',
// 需要填写开发者的AppID
secret: ''
// 需要填写开发者的AppSecret
}
✎ 5.1 【案例1】用户登录
3 搭建开发者服务器
② 模拟数据库。
var db = { session: {}, user: {}
}
// 模拟数据库 // 保存openid和session_key的会话信息 // 保存用户记录,如用户名、积分等数据
✎ 5.1 【案例1】用户登录
2 前导知识
数据缓存:缓存数据,从而在小程序退出后再次打开时,可以从缓存中读取上次保存的数据,常用的数
据缓存API如下表所示:
方式
异步
同步
名称
wx.setStorage() wx.getStorage() wx.getStorageInfo() wx.removeStorage() wx.setStorageSync() wx.getStorageSync() wx.getStorageInfoSync() wx.removeStorageSync()
未登录示例
已登录示例
✎ 5.1 【案例1】用户登录
2 前导知识
小程序通过微信官方提供的,获取 微信提登录能力供的用户身份标识 ,建立用户体系。用户登录流程时 序图(右图所示):
✎ 5.1 【案例1】用户登录
2 前导知识
用户登录流程需要小程序、开发者服务器和微信接口服务3个角色的参与, 下面介绍这3个角色的作用: 小程序:用户使用的客户端,由于小程序运行在微信之上,因此小程序可以通过API获取微信用户的
将数据存储在本地缓存中指定的key中 从本地缓存中异步获取指定key的内容 异步获取当前storage的相关信息 从本地缓存中移除指定key wx.setStorage()的同步版本 wx.getStorage()的同步版本 wx.getStorageInfo()的同步版本 wx.removeStorage()的同步版本
// 接口调用失败的回调函数
✎ 5.1 【案例1】用户登录
3 搭建开发者服务器
本节选择使用Node.js搭建开发者服务器,安装Node.js,创建项目: ① 初始化项目,将会自动创建package.json配置文件。
npm init –y
② 安装Express框架和request模块。
npm install express –save npm install request --save
第5章 API应用案例(上)
微信 小程序
• 【案例1】用户登录 • 【案例3】天气预报查询
• 【案例2】个人中心 • 【案例4】查看附近的美食餐厅

学习目标
1
掌握小程序网络请求服务器
数据方法
了解小程序位置信息、
4
设备应用API的使用
掌握登录、交互反馈、 2
分享API的用法
了解腾讯地图SDK用法 3
③ 安装nodemon监控文件修改(如果已经安装则跳过此步)。
npm install nodemon -g
✎ 5.1 【案例1】用户登录
3 搭建开发者服务器
执行上述命令后,在项目目录下创建index.js文件,编写代码如下:
① 引入Express框架和request模块,配置appid和secret。
✎ 5.1 【案例1】用户登录
2 前导知识
获取缓存数据示例代码如下:
// 获取数据缓存 wx.getStorage({
key: 'key', success: res => {
console.log(res.data) }, fail: res => {} })
// 本地缓存中指定的 key // 接口调用成功的回调函数
身份信息。 开发者服务器:小程序的后端服务器,用于为小程序用户提供服务。 微信接口服务:微信为开发者服务器提供的接口。
✎ 5.1 【案例1】用户登录
2 前导知识
登录流程具体细节: 小程序获取code。 小程序将code发送给开发者服务器。 开发者服务器通过微信接口服务校验登录凭证。 开发者服务器自定义登录态。

目录
【案例1】用户登录
☞点击查看本节相关知识点
【案例2】个人中心
☞点击查看本节相关知识点
【案例3】天气预报查询
☞点击查看本节相关知识点
【案例4】查看附近的美食餐厅
☞点击查看本节相关知识点
✎ 5.1 【案例1】用户登录
1 案例分析
用户登录是微信小程序必不可少的环节,一个完整的登录功能还包括用户的信息获取、登录的状态 判定等。下图为未登录和已登录页面效果图。
✎ 5.1 【案例1】用户登录
3 搭建开发者服务器③来自请求登录接口,校验登录凭证的微信接口URL地址。
app.post('/login', (req, res) => { var url = 'https:///sns/jscode2session?appid=' + wx.appid + '&secret=' + wx.secret + '&js_code=' + req.body.code + '&grant_type=authorization_code' request(url, (err, response, body) => { if(){ // 此处代码判断session.openid是否存在} } res.json({token: token}) })
const express = require('express')
const bodyParser = require('body-parser')
const request = require('request')
const app = express()
e(bodyParser.json())
相关文档
最新文档