小程序開發(fā):基礎封裝(二)

1氛琢、快速上手

支持通過 可視化界面喊递、vue-cli命令行 兩種方式快速創(chuàng)建項目。

2阳似、啟動服務

項目創(chuàng)建后我們啟動項目骚勘,通過 HBuilderX 可視化界面的直接點擊上面菜單的 運行到小程序。通過vue-cli命令的創(chuàng)建的項目撮奏,通過npm run dev:mp-weixin(npm run build:mp-weixin)啟動(打包)俏讹。
由于習慣使用vscode,所以我選擇的是vue-cli方式創(chuàng)建項目畜吊。

3泽疆、基礎功能封裝

拿來主義??,這里直接copy了掘金大佬的一些封裝
uni-app網絡請求的封裝
uni-app路由的封裝
uni-app緩存器的封裝
由于小程序不支持cookie攜帶問題玲献,所以我這里通過 response.header["Set-Cookie"] 拿到cookie的值殉疼,然后存到localstorage,在request的攔截處獲取localstorage的cookie值并設置request的header['cookie']捌年,這樣就解決了cookie問題瓢娜。

4预伺、異步問題

有這樣一個需求問題换团,在小程序啟動時,在onLaunch中調用接口阅虫,獲取cookie托酸,后面所有頁面的請求都需攜帶上這個cookie褒颈。
但是由于異步問題伙单,onLaunch中獲取cookie的請求還沒完成,page頁面的請求就執(zhí)行了哈肖,所以我們需要在onLaunch中拿到cookie后吻育,再去執(zhí)行頁面的請求。
那么如何保證onLaunch中異步的函數請求完后淤井,才去執(zhí)行page頁面中的請求呢布疼?
1、定義兩個全局的變量loginLoading币狠,callbackEvent游两,不管你是定義在globalData中還是定義在vuex中都可以,只要是全局的就行漩绵,我這里定義在globalData中贱案;
2、在獲取cookie的接口請求成功時加個判斷

// 等到onLaunch中的異步函數請求完成后再去執(zhí)行page頁面的
if (this.globalData.callbackEvent) {
  this.globalData.callbackEvent();
}

3止吐、重點來了宝踪,在page頁面的onLoad中做如下處理

onLoad() {
  const app = getApp();
  // 如果onLaunch中的異步函數執(zhí)行完成后才觸發(fā)頁面的onLoad,那么正常流程碍扔,直接調用該頁面的請求
  if (app.globalData.loginLoading) {
    // 調用接口
  } else {
    // 如果onLaunch中的異步函數還未執(zhí)行完成就已經觸發(fā)頁面的onLoad瘩燥,那么給callbackEvent重新賦值,等到onLaunch中的異步函數請求完成后再去執(zhí)行page頁面的
    app.globalData.callbackEvent = () => {
      // 調用接口
    }
  }
}

5不同、md5厉膀、rsa加密

由于登錄、注冊的密碼需要加碼二拐,在這里也坑了一天服鹅,由于小程序沒有window對象,所以插件的js需要改造百新,這里md5.js文件和jsencrypt.js大家可以直接使用企软,親測有用,小程序已上線吟孙。

6澜倦、表單校驗

手機端的表單校驗不像pc端封裝的那么豐富,這里找了個WxValidate.js文件杰妓,具體如何使用后面再講。??我感覺移動端表單就是坑碘勉,登錄巷挥、注冊是躲不過,能不用表單就盡量少用表單吧验靡。還有小程序input輸入框一大堆問題倍宾。

到這里框架的搭建和封裝就差不多了雏节,接下來可以進入開發(fā)階段了,快速傳送高职,查看代碼钩乍。

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市怔锌,隨后出現的幾起案子寥粹,更是在濱河造成了極大的恐慌,老刑警劉巖埃元,帶你破解...
    沈念sama閱讀 218,755評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件涝涤,死亡現場離奇詭異,居然都是意外死亡岛杀,警方通過查閱死者的電腦和手機阔拳,發(fā)現死者居然都...
    沈念sama閱讀 93,305評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來类嗤,“玉大人糊肠,你說我怎么就攤上這事∫怕啵” “怎么了罪针?”我有些...
    開封第一講書人閱讀 165,138評論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長黄伊。 經常有香客問我泪酱,道長,這世上最難降的妖魔是什么还最? 我笑而不...
    開封第一講書人閱讀 58,791評論 1 295
  • 正文 為了忘掉前任墓阀,我火速辦了婚禮,結果婚禮上拓轻,老公的妹妹穿的比我還像新娘斯撮。我一直安慰自己,他們只是感情好扶叉,可當我...
    茶點故事閱讀 67,794評論 6 392
  • 文/花漫 我一把揭開白布勿锅。 她就那樣靜靜地躺著,像睡著了一般枣氧。 火紅的嫁衣襯著肌膚如雪溢十。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,631評論 1 305
  • 那天达吞,我揣著相機與錄音张弛,去河邊找鬼。 笑死,一個胖子當著我的面吹牛吞鸭,可吹牛的內容都是我干的寺董。 我是一名探鬼主播,決...
    沈念sama閱讀 40,362評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼刻剥,長吁一口氣:“原來是場噩夢啊……” “哼遮咖!你這毒婦竟也來了?” 一聲冷哼從身側響起造虏,我...
    開封第一講書人閱讀 39,264評論 0 276
  • 序言:老撾萬榮一對情侶失蹤御吞,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后酗电,有當地人在樹林里發(fā)現了一具尸體魄藕,經...
    沈念sama閱讀 45,724評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年撵术,在試婚紗的時候發(fā)現自己被綠了背率。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,040評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡嫩与,死狀恐怖寝姿,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情划滋,我是刑警寧澤饵筑,帶...
    沈念sama閱讀 35,742評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站处坪,受9級特大地震影響根资,放射性物質發(fā)生泄漏。R本人自食惡果不足惜同窘,卻給世界環(huán)境...
    茶點故事閱讀 41,364評論 3 330
  • 文/蒙蒙 一玄帕、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧想邦,春花似錦裤纹、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至呕童,卻和暖如春漆际,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背拉庵。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評論 1 270
  • 我被黑心中介騙來泰國打工灿椅, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留套蒂,地道東北人钞支。 一個月前我還...
    沈念sama閱讀 48,247評論 3 371
  • 正文 我出身青樓茫蛹,卻偏偏與公主長得像,于是被迫代替她去往敵國和親烁挟。 傳聞我的和親對象是個殘疾皇子婴洼,可洞房花燭夜當晚...
    茶點故事閱讀 44,979評論 2 355