天天看點

收納控福音!從0到1用雲開發制作物品管理小程式

先上我們最終使用雲開發開發的小程式,小程式碼如下:

收納控福音!從0到1用雲開發制作物品管理小程式

小程式名字為家物館,主要用來管理家中物品。涉及到使用者賬号系統,物品管理,分類及搜尋等功能,使用了雲開發的雲函數,資料庫,存儲,CMS 内容管理等能力。

如果對雲開發不熟悉的話,可以先按照官方文檔,快速建立一個雲開發的小程式用于參考。文檔暫時不用看太多,小程式跑起來了就可以(雲開發的文檔較多,下文會對所涉及的内容會給出相應的文檔連結)。

由于我們要開發的小程式涉及到資料庫、雲函數及雲存儲,接下來将按照這幾個部分進行介紹。

手寫表結構實在是有點慢,而且一不小心還有可能犯錯,于是借助了内容管理系統,這可以大大提高工作效率。詳細的文檔請移步CloudBase CMS。

收納控福音!從0到1用雲開發制作物品管理小程式

使用上面的内容管理系統,我們既可以友善管理内容模型(注意内容模型的名字不要随便改,不然内容那塊會出問題,是以起名字要慎重),還可以建立内容。

除了上面的内容管理系統,我們同樣還可以在雲開發面闆的資料庫中進行管理。如下圖:

收納控福音!從0到1用雲開發制作物品管理小程式

除此之外,進階操作還提供了一些資料庫操作執行個體,如下圖:

收納控福音!從0到1用雲開發制作物品管理小程式

這裡先記住操作資料庫三步走(具體的執行個體操作我們在雲函數中繼續):

選擇哪個環境的資料庫

選擇哪個集合

對集合進行增删改查操作

更詳情的文檔參考:資料庫增删改查SDK

在内容管理系統中,文檔 ID 屬于系統字段,目前隻能自動生成不可自定義。但是有些情況下,我們還是想可以自定義文檔 ID 的,如統一分類的資料。

所幸還有一條路,雲開發面闆的資料庫中是支援自定義的,是以如果真需要自定義的文檔 ID,可以直接在雲開發面闆的資料庫中定義。不過雲開發面闆的資料庫自定義 ID 的那個字段輸入框,是有長度限制的。

收納控福音!從0到1用雲開發制作物品管理小程式

文檔 ID 在查詢單個資料記錄時非常有用,如擷取某個使用者資訊:

首先我們對着我的第一個雲函數文檔,實作我們的第一個雲函數。

這裡面主要有一個庫和兩個 API 需要注意:

一個庫文檔:wx-server-sdk

兩個 API 文檔:getWXContext (一定要注意不同的調用方式可能會傳回不同的資料)、callFunction

接下來,我們可以按照雲函數的文檔,一直看到本地調試。

收納控福音!從0到1用雲開發制作物品管理小程式

看完這些之後,我們就可以正式開始雲函數開發了。下面以擷取使用者雲函數為例。

我們首先建立一個 user 雲函數(在雲函數根目錄上右鍵,在右鍵菜單中,選擇建立一個新的 Node.js 雲函數,命名為 user)。

收納控福音!從0到1用雲開發制作物品管理小程式

安裝依賴檔案

右鍵 user 檔案夾右鍵,選擇在内建終端中打開,輸入 <code>npm i</code> 指令,安裝依賴檔案。

收納控福音!從0到1用雲開發制作物品管理小程式

開啟雲函數本地調試

依賴檔案安裝完成後,同樣右鍵 user 檔案夾,選擇開啟雲函數本地調試。

收納控福音!從0到1用雲開發制作物品管理小程式

打開的雲函數本地調試面闆如下,注意右邊的那個勾選。

收納控福音!從0到1用雲開發制作物品管理小程式

編寫雲函數

整體代碼大概如下(可根據 type 類型判斷要請求的資料):

收納控福音!從0到1用雲開發制作物品管理小程式

小程式端調用

先在 app.js 中完成雲能力初始化,代碼如下:(文檔可參考:小程式端雲能力初始化文檔)。

在需要的地方調用雲函數 user,代碼如下:

上傳并部署

調試開發完畢,就可以上傳部署了,如下圖:

收納控福音!從0到1用雲開發制作物品管理小程式

我們所有的雲函數都可以通過雲開發面闆中進行管理,如下圖:

收納控福音!從0到1用雲開發制作物品管理小程式

其實在快速開始裡面,預設建立的小程式裡面就有上傳圖檔的一個雲開發執行個體,對着裡面的執行個體抄一遍,把一些資訊列印出來看看就會用了。

具體文檔參考: 檔案存儲 。

當然對于使用者上傳的圖檔來說,最好還得有個裁剪的功能,小程式裁剪圖檔的元件網上也有很多,找個合适自己即可。

對于存儲的内容,我們同樣可以通過雲開發面闆檢視,如下圖:

收納控福音!從0到1用雲開發制作物品管理小程式

雲開發還提供了一種新的方法去調用開放資料:開放資料校驗與解密 。

下面我們以擷取電話号碼為例,具體實戰下:

使用 <code>button</code> 元件,<code>open-type</code> 為 <code>getPhoneNumber</code>

在 <code>getPhoneNumber</code> 中拿到 <code>cloudID</code>

收納控福音!從0到1用雲開發制作物品管理小程式

編寫雲函數 user,調用 getOpenData API,主要代碼為:

小程式端調用雲函數,這樣就拿到了電話号碼。

總體來說,小程式雲開發圓了我們全棧的夢,一個人一把梭是快樂的,但是摸索的過程中其實也是有挑戰的,雲開發不斷的發展優化,需要我們跟緊步伐~

文章來源:騰訊IMWEB團隊

雲開發(Tencent CloudBase,TCB)是騰訊雲提供的雲原生一體化開發環境和工具平台,為開發者提供高可用、自動彈性擴縮的後端雲服務,包含計算、存儲、托管等serverless化能力,可用于雲端一體化開發多種端應用(小程式,公衆号,Web 應用,Flutter 用戶端等),幫助開發者統一建構和管理後端服務和雲資源,避免了應用開發過程中繁瑣的伺服器搭建及運維,開發者可以專注于業務邏輯的實作,開發門檻更低,效率更高。

開通雲開發:https://console.cloud.tencent.com/tcb?tdl_anchor=techsite

産品文檔:https://cloud.tencent.com/product/tcb?from=12763

技術文檔:https://cloudbase.net?from=10004

技術交流群、最新資訊關注微信公衆号【騰訊雲開發CloudBase】