微信小程序聚合项目完成总结
项目快做完了,做下总结:
需求:登录模块、设备列表展示模块、个人中心模块、详情模块,总共分为这四个模块内容。
一、拿到项目需求后,先创建了一下项目,然后封装了一些常用的方法,http请求和时间处理函数Date
1、封装http请求,比较简单用Promise 进行封装,把返回的数据resolve(res),然后把http.js引入到全局app.js中,利用globalData{}对象进行全局管理。
复制代码
const baseUrl = ‘https://xxx’
let http= (method, urlData)=>{
return new Promise((resolve,reject)=>{
wx.request({
url: baseUrl + urlData.url,
data: urlData.data,
method: method,
header: {
“Content-Type”: “application/json”,
“Authorization”: "bearer " + wx.getStorageSync(‘token’)
},
success: function (res) {
resolve(res)
},
fail: function (err) {
reject(err)
}
})
})
}
export default http
复制代码
2、因为项目中需要对时间进行处理,后台返回的是时间戳这里就封装了一个时间转换处理函数,代码比较简单,同http一样引入全局。
二、想了想为了加快开发速度,就在项目中引入vant ui 框架,使用简单npm 下载下来,在开发工具中构建一下npm就ok了,使用方法官方已给出:https://vant-contrib.gitee.io/vant-weapp/#/intro
三、登录模块开发
需求:一键登录、输入账号密码登录,两种方式
1、一键登录
分析:
(1)、一键登录的账号主要来源是微信绑定的手机号码,所以我们要进行手机号码授权(拿到encryptedData和iv,后端解码获取到手机号码)
(2)、在登录时我们需要获取code登录标识(有时间限制,只能使用一次)
(3)、发送登录请求,把code、encryptedData、iv提交给后端做登录处理,返回sessionkey和token并保存
2、账号密码登录
分析:
&#