05-云函数/云数据库的增删改查
云函數(shù)就是運行在云端(服務(wù)器端)的函數(shù),運行在云端的nodejs中,當(dāng)我們的云函數(shù)被客戶端調(diào)用的時候,定義的代碼會被放在nodejs的運行環(huán)境中去執(zhí)行。
那么我們可以在云函數(shù)中去做什么事情呢?
基本上我們普通的JS能做什么,他都可以去完成的。
這個方法里面有兩個參數(shù):
event:
觸發(fā)云函數(shù)的事件,就是當(dāng)客戶端調(diào)用云函數(shù)的時候傳入的參數(shù),我們可以通過event拿到客戶端傳入的所有參數(shù)
comtext:
包含了調(diào)用信息和運行狀態(tài),用它來了解服務(wù)器的運行情況,uniCloud會自動將客戶端的操作系統(tǒng)和運行平臺應(yīng)用信息等都會注入到context之中。然后我們可以通過context去獲取每次調(diào)用的上下文
例子:
1.組件中創(chuàng)建一個按鈕:
2.open方法中調(diào)用云函數(shù)API,連接get_list這個云函數(shù)
3.get_list云函數(shù):
4.運行:
注意:如果我們每次修改了云函數(shù)文件,需要重新上傳部署一次,否則不會生效,會點擊按鈕打印出本身傳給云函數(shù)的入?yún)ⅰ?/p>
此時下面調(diào)整為“連接本地云函數(shù)” 再次點擊按鈕: 這樣才正確
把本地云函數(shù)文件上傳部署一下:
再選擇連接云端云函數(shù),后點擊按鈕:會發(fā)現(xiàn)這次生效了,并且還會返回給你一些頭部信息。
我們在云函數(shù)中把客戶端的入?yún)⑼ㄟ^event接收到,并做拼接后再返回給客戶端的success鉤子函數(shù)中:
上傳部署云函數(shù)后,點擊頁面按鈕輸出:
云數(shù)據(jù)庫的添加和刪除:
uniCloud中的源數(shù)據(jù)庫是什么樣的數(shù)據(jù)庫?
uniCloud為我們提供了json格式的文檔型數(shù)據(jù)庫,數(shù)據(jù)庫中的每條記錄都JSON格式的一個對象。一個數(shù)據(jù)庫可以有多個集合,也就是可以有多個數(shù)據(jù)表,相對于關(guān)系型中數(shù)據(jù)表呢,集合可以看做是一個JSON數(shù)組,數(shù)組中的每個對象就是一條記錄,記錄的格式就是我們的json對象,
當(dāng)然我們極少直接在web 控制臺中去手動添加記錄,我們都是在云函數(shù)中去連接數(shù)據(jù)庫,獲取某個集合,對其增刪操作
我們想要直接看到運行的結(jié)果,而不是非要像之前那樣還要上傳部署后,return 給客戶端,客戶端(vue文件中調(diào)用云函數(shù),通過success看到運行結(jié)果),這樣太麻煩了,我們直接想在控制臺看到結(jié)果:
運行結(jié)果:
添加多條:
打開web控制臺可以看到:新增的都在這顯示出來了。
刪除上面中重復(fù)了name:uniapp那一條數(shù)據(jù):
打印輸出:影響了一條,刪除了一條
刷新控制臺中的數(shù)據(jù)表:多出的那條name:'uniapp' 已經(jīng)看不到了。
新增:
那么add新增和set有什么區(qū)別?
數(shù)據(jù)庫的查找
通過where去包裹查詢條件,然后調(diào)用.get()
客戶端vue文件中:
輸出結(jié)果:
一般情況下,我們的查詢條件都是前端傳過來的:
云函數(shù)中where查詢的條件為event.name
客戶端:
輸出:
這樣的話,客戶端就可以根據(jù)需要傳遞給云函數(shù)查詢條件,云函數(shù)去負(fù)責(zé)查詢數(shù)據(jù)庫,查詢完成返回給客戶端。
總結(jié)
以上是生活随笔為你收集整理的05-云函数/云数据库的增删改查的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 美国芯片制造商 Wolfspeed 拟斥
- 下一篇: Linux下robust互斥锁实现