微信小程序的云開發可以自己對數據庫進行操作而不需要后臺,那么很常見的一個功能就是我們在讀取數據的時候需要分頁來獲取數據,所以今天就來看看小程序的云開發如如何通過分頁來獲取數據,并且將其封裝為一個云函數。
一、云函數的定義
云函數是一段運行在云端的代碼,無需管理服務器,在開發工具內編寫、一鍵上傳部署即可運行后端代碼。
小程序內提供了專門用于云函數調用的 API。開發者可以在云函數內獲取到每次調用的上下文(appid、openid 等),無需維護復雜的鑒權機制,即可獲取天然可信任的用戶登錄態(openid)。
二、定義一個自己的云函數
首先我們需要在開發工具中新建一個云函數如下:
新建之后會出現一個cmd窗口自動安裝一些東西,前提需要你有安裝nodejs,安裝好后就新建好了云函數,如下:
在index.js中就是我們定義云函數的地方,來看看里面都有啥
已經幫我們定義好了初始化和入口函數的定義了,那么下面我們就來寫一個簡單的自定義云函數如下:
目標就是求兩個數的和,到這里云函數就定義好了。最后別忘了將定義好的云函數部署到云上,如下:
點擊后等到如下界面就算是部署好了
三、小程序調用云函數
上面我們定義好了云函數,接下來看看在小程序中如何調用我們自己定義的云函數,如下:
上面是使用回調的方式調用的,其實微信小程序也支持promise方式的,如下:
兩者結果都是一樣的,只是看開發者的個人愛好了。
四、分頁云函數
有了上面的基礎和之前對數據庫的了解那么我們可以來寫一寫如何使用分頁來獲取數據,將這個功能封裝到一個云函數中,如下:
最后小程序中條用結果如下:
上面結果是第一頁的數據,數據庫中總共有14條記錄,看下第二頁數據,如下:
返回結果ok,在看看有帶查詢條件的,如下:
_id有值而且是唯一的,所以只要一條記錄,也ok了,到此這個分頁的云函數以及封裝好了,后面只要每次小程序調用就可以了。