用到的數(shù)據(jù)庫(kù)表:
用戶表:chat-user,用于存放用戶的基本信息,比如賬號(hào)、密碼、頭像等等
用戶的注冊(cè)
1.先獲取用戶信息
使用wx.getUserProfile接口,獲取用戶的基本信息
功能描述
獲取用戶信息。頁(yè)面產(chǎn)生點(diǎn)擊事件(例如 button 上 bindtap 的回調(diào)中)后才可調(diào)用,每次請(qǐng)求都會(huì)彈出授權(quán)窗口,用戶同意后返回 userInfo。該接口用于替換 wx.getUserInfo,詳見(jiàn) 用戶信息接口調(diào)整說(shuō)明。
可以與一個(gè)事件進(jìn)行綁定。
2.用戶輸入賬號(hào)密碼,把基本信息添加到數(shù)據(jù)庫(kù)chat-user中
wx.cloud.database().collection("chat-user").add({
data:{
number:Date.now(),//賬號(hào)
pas:that.data.pas1,//密碼
touxiang:that.data.userInfo.avatarUrl,//頭像
name:that.data.userInfo.nickName,//用戶微信名
admin:that.data.zh//用戶
},
完成這一步,用戶的基本信息就上傳到數(shù)據(jù)庫(kù)中了。
同時(shí)為了之后更好的調(diào)用程序,可以將獲取到的值賦值給本頁(yè)的data和全局的globalData。
注意:
2.1.賬號(hào)為了防止重復(fù),我們使用data.now時(shí)間函數(shù)生成。
2.2.在用戶進(jìn)行輸入的時(shí)候,我們有兩個(gè)框讓讓他們進(jìn)行輸入,一個(gè)是昵稱,另外一個(gè)是密碼。為了防止用戶密碼出現(xiàn)失誤,可以讓用戶輸入兩次密碼一致后才注冊(cè)成功。
2.3.靈活的使用 wx.showToast,彈出窗口進(jìn)行提示是否成功。
3.頁(yè)面跳轉(zhuǎn)
調(diào)用組件wx.switchTab,直接跳轉(zhuǎn)到tabar頁(yè)面。
進(jìn)行登錄
1.獲取用戶的賬號(hào)和密碼
使用input組件就就可以實(shí)現(xiàn)。
以獲取密碼為例
getpassword(e){//獲取輸入框密碼
console.log(e.detail.value)
this.setData({
pas1:e.detail.value
})
},
在js頁(yè)面中,把獲取到的信息負(fù)責(zé)給此頁(yè)面中的data,為了下一步的數(shù)據(jù)中查詢用戶賬號(hào)信息做準(zhǔn)備。
2.根據(jù)獲取到的賬號(hào)密碼,對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢,獲取查詢到的結(jié)果。
注意:res._id是已經(jīng)獲取到的用戶輸入的賬號(hào)。
//查詢數(shù)據(jù)庫(kù)獲取這個(gè)數(shù)據(jù)
wx.cloud.database().collection("chat-user").doc(res._id).get({
success(res1){
app.globalData.userInfo=res1.data//賦值給全局
wx.switchTab({
url: '/pages/message/message',
})
wx.showToast({
title: '登錄成功!',
})
}
})
查詢成功后,把返回的值賦值給全局data和本頁(yè)面的data,以便進(jìn)行接下來(lái)的操作。
綜合使用
1.用戶點(diǎn)擊登錄進(jìn)入界面,可以選擇直接登錄或者注冊(cè)。
2.若直接登錄,則執(zhí)行登錄邏輯。
3.如果用戶進(jìn)行注冊(cè),則執(zhí)行注冊(cè)邏輯。
?
首先跳轉(zhuǎn)到注冊(cè)頁(yè)面,之后判斷獲取用戶是否獲取微信信息,若沒(méi)有獲取,可以加一個(gè)提升窗口。
如果已經(jīng)獲取用戶信息,則執(zhí)行注冊(cè)邏輯。
4.每一次獲取數(shù)據(jù)庫(kù)表中的內(nèi)容之后,都需要將內(nèi)容賦值給本頁(yè)的data和全局的data。
5.注冊(cè)或者登錄成功后,跳轉(zhuǎn)到頁(yè)面首頁(yè)。
?注意事項(xiàng):success函數(shù)有兩種寫法,一種是箭頭函數(shù)(不用進(jìn)行that與this區(qū)分)寫法是:success:(res)=>{}.文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-489330.html
另外一種是之前版本的success,需要進(jìn)行that與this區(qū)分。寫法:success(){}.文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-489330.html
到了這里,關(guān)于微信小程序——如何實(shí)現(xiàn)賬號(hào)的注冊(cè)、登錄?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!