在這里,我主要整理了一些小程序開發(fā)過程中常用的功能點(diǎn),主題和tabBar的設(shè)置、授權(quán)檢測(cè)、模板消息推送等。
1、主題和tabBar的設(shè)置,這倆會(huì)經(jīng)常配置在app.json里面。
-
"window":{
-
"navigationBarBackgroundColor": "#1AAD19",//導(dǎo)航條背景色
-
"navigationBarTitleText": "某某某",
-
"navigationBarTextStyle":"white"//導(dǎo)航條文字以及圖標(biāo)顏色
-
},
-
"tabBar": { //list選項(xiàng)最少2個(gè),最多5個(gè)
-
"color": "#515151",
-
"selectedColor": "#ff5777",
-
"borderStyle": "black",
-
"backgroundColor": "#fff",
-
"list": [
-
{
-
"text": "Tab1",
-
"pagePath": "pages/index/index",
-
"iconPath": "pages/image/tidan_unfocus.png",
-
"selectedIconPath": "pages/image/tidan_focus.png"
-
},
-
{
-
"text": "Tab2",
-
"pagePath": "pages/activity/activity",
-
"iconPath": "pages/image/activity_unfocus.png",
-
"selectedIconPath": "pages/image/activity_focus.png"
-
},
-
{
-
"text": "Tab3",
-
"pagePath": "pages/my/my",
-
"iconPath": "pages/image/my_unfocus.png",
-
"selectedIconPath": "pages/image/my_focus.png"
-
}
-
]
-
}
2、是否已經(jīng)授權(quán)的檢測(cè)
-
/**
-
* 判斷是否已經(jīng)授權(quán)
-
*/
-
judgeAuthorize: function() {
-
wx.getSetting({
-
success: function(res) {
-
if (!res.authSetting['scope.userInfo']) { //未授權(quán)
-
//進(jìn)行彈窗提示去授權(quán)或者設(shè)置一個(gè)授權(quán)頁(yè)面覆蓋
-
}
-
}
-
})
-
},
需要注意的一點(diǎn)是:隨著版本的升級(jí),可能以后wx.getUserInfo都就無法獲取用戶信息了,雖然在正式版中現(xiàn)在還好用。官方提倡用button組件去實(shí)現(xiàn)彈窗授權(quán)。說實(shí)話,我真心受不了這種實(shí)現(xiàn)方式。按照文檔設(shè)置一下:
-
<button class='text btn' open-type="getUserInfo" bindgetuserinfo='getInfo'>登錄授權(quán)</button>
這樣就監(jiān)聽getInfo這個(gè)回調(diào)方法就行了!
-
/**
-
* 點(diǎn)擊獲取用戶授權(quán)
-
*/
-
getInfo: function(e) {
-
if (e.detail.userInfo) { //同意授權(quán)
-
app.nickName = e.detail.userInfo.nickName;
-
app.avatarUrl = e.detail.userInfo.avatarUrl;
-
self.getOpenId();
-
} else { //拒絕授權(quán)
-
wx.showModal({
-
title: '提示',
-
content: '未授權(quán),無法正常使用小程序功能,請(qǐng)重新點(diǎn)擊授權(quán)',
-
showCancel: false
-
})
-
}
-
},
后面流程就不貼代碼了,就是用wx.login去獲取code,再用code去獲取openid,最后再把openid、昵稱、頭像一塊提交到后臺(tái)接口就ok了!
3、模板消息的推送
表單提交,指定一些屬性即可。如下
-
<form report-submit="true" bindsubmit="commitInfo">
-
<button formType="submit">提交</button>
-
</form>
-
-
-
-
commitInfo:function(e){
-
console.log(e.detail.formId);
-
}
后臺(tái)要實(shí)現(xiàn)模板推送,需要前臺(tái)提供一個(gè)formId,需要注意兩點(diǎn):1、這個(gè)formId只能使用一次,用完即失效。2、模板消息只能推送給當(dāng)前提交這個(gè)formId的微信賬號(hào),說白了,就是只能推送給自己,不能推送給別人。
以上就是一些簡(jiǎn)單的微信小程序開發(fā)知識(shí)總結(jié),希望對(duì)大家有一定幫助。