天天看點

微信小程式構架

微信小程式構架

對于微信小程式的開發,我采用的是MVC架構進行開發,我就不在解釋MVC是什麼了,這個大家都知道;

構架如下

微信小程式構架

我們來建立我們請求基類,為什麼要建立呢?我們向服務端發送請就要寫請求的代碼,我們把請求一些方法分裝起來;

建構請求基類:

微信小程式構架

我所建立的檔案目錄在utils/base.js

微信小程式構架
微信小程式構架
微信小程式構架

我所講這種方式就是我前面講的三端分離,伺服器的接口不是誰向通路就能通路的,必須攜帶TOKEN,判斷目前使用者是否有權通路;

我所編寫的風格采用ES6進行編寫,這種風格和伺服器編寫代碼很相似,對伺服器開發者來說應該是很容易的;

我們把擷取頁面參數綁定值的方法也放在這,因為跨頁面就要用。

微信小程式構架

微信請求方法

微信小程式構架
微信小程式構架

請求流程圖

微信小程式構架

注意:用戶端在擷取token的時候,要避免頻繁的擷取,目前擷取了token,就将token存放在微信的緩存裡。當緩存的token失效的時候,再去伺服器擷取。用戶端的緩存失效的時間要比伺服器短一點。

配置檔案

還有一點我們不要把請求的位址都寫在發送請求裡面,我們把請求位址的公共部分放在我們自定義的配置檔案裡面;

微信小程式構架

這樣做的話我們會少寫很多的代碼;

Token

我們将Token子產品獨立出來

微信小程式構架

首先我們來分一下這個過程

微信小程式構架

驗證目前的令牌是否有效

微信小程式構架

将擷取的Token存到微信緩存裡面

微信小程式構架

 注意:我們是通過目前使用者進行登陸之後,拿着微信傳回的Code去生成token,再将token傳回給微信;

在用戶端調用我們自己封裝的類的用法;

微信小程式構架

總結:

1、我們用ES6風格編寫的時候,最後一定要将類輸出,這樣才能引用到;

微信小程式構架

2、我們用戶端在擷取token的時候,不要頻繁的去通路伺服器,我們token緩存起來。然後請求的時候驗證,如果失效就去擷取,減小伺服器的壓力;

3、我們微信或頁面是沒有配置檔案的,我們可以采用ES6寫法封裝一個類,把配置檔案寫成類屬性;

4、我們再設計用戶端的時候一定要把三端分離的思想放在裡面(個人建議);

5、我們在引用我們自己分裝類的時候,隻需要在用的地方導入并且繼承他就可以用了;