日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

五十一、微信小程序云开发中的云函数

發布時間:2024/10/8 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 五十一、微信小程序云开发中的云函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

@Author:Runsen

暑假很長,明年就是找工作的時候了。這個時候必須比之前還要拼命。

百無聊賴,看過文檔才發現,微信小程序已將云函數,對象存儲和云數據庫這些都搬了進來,由于前幾天剛剛看過這些方面的東西,所以感覺還是挺簡單的。云函數這個概念在之前學習的時候沒有注意到。

今天是2020年7月24日。不學習,不復習,那和一條咸魚差不多。 今天繼續學習復習微信小程序中的云開發中的云函數。官方文檔

文章目錄

  • 云函數
  • 新建云函數
  • 調用云函數

云函數

官方解釋:一個云函數的寫法與一個在本地定義的 JavaScript 方法無異,代碼運行在云端 Node.js 中。當云函數被小程序端調用時,定義的代碼會被放在 Node.js 運行環境中執行。

其實云函數就是nodejs的函數差不多。所以之前的node到vue基本上內容都覆蓋了。

在云開發控制臺中,已經清空了我的云函數。

新建云函數

在項目根目錄找到 project.config.json 文件中 cloudfunctionRoot ,指定本地已存在的目錄作為云函數的本地根目錄

因此可以在cloudfunctionRoot文件夾中新建Node.js云函數。

這里我取名為sum,就是來簡單的實現下兩個數求和。


云函數中使用 wx-server-sdk 需在對應云函數目錄下安裝 wx-server-sdk 依賴,在創建云函數時會在云函數目錄下默認新建一個 package.json 并提示用戶是否立即本地安裝依賴。

npm install --save wx-server-sdk@latest

調用云函數

下面是sum云函數的代碼

// 云函數入口文件 const cloud = require('wx-server-sdk')cloud.init()// 云函數入口函數 exports.main = async (event, context) => {const wxContext = cloud.getWXContext()return {event,openid: wxContext.OPENID,appid: wxContext.APPID,unionid: wxContext.UNIONID,} }

我們實現的是兩個數的求和,因此不需要這么復雜。

將sum中的index.js修改成這樣,并上傳成功。

// 云函數入口函數 exports.main = async (event, context) => {return {sum:event.a + event.b} }

下面在頁面上使用云函數sum,這是index.wxml頁面的代碼。

<view>云函數</view> <button bindtap="sum">調用云函數</button>

下面是index.js中的代碼

Page(sum:function(){wx.cloud.callFunction({name:"sum",data: {a:1 ,b:2}}).then(res=>{console.log(res)}).catch(err=>{console.log(err)})}, }

在云函數中日志可以看到,調用成功。

下面我們看下云開發中的獲取用戶的Openid,記得上傳云函數。

在index.wxml中定義了一個onGetOpenid方法。

<button class="userinfo-nickname" bindtap="onGetOpenid">點擊獲取 openid</button>

繼續看一下index.js中的onGetOpenid方法,其實就是調用了login的云函數

onGetOpenid: function() {// 調用云函數wx.cloud.callFunction({name: 'login',data: {},success: res => {console.log('[云函數] [login] user openid: ', res.result.openid)app.globalData.openid = res.result.openidwx.navigateTo({url: '../userConsole/userConsole',})},fail: err => {console.error('[云函數] [login] 調用失敗', err)wx.navigateTo({url: '../deployFunctions/deployFunctions',})}})},

下面是云開發中云函數的效果

總結

以上是生活随笔為你收集整理的五十一、微信小程序云开发中的云函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。