程序开发之云函数的使用教程详解

网友投稿 342 2023-11-12

目录1、云函数1.1 云函数API和云函数创建2、云函数案例

1、云函数

云函数是部署在云端的函数,他和小程序本地的函数存在很大的区别,云函数应用涉及云端云函数定义和本地引用云端云函数的API接口两个问题。

1.1 云函数API和云函数创建

小程序开发之云函数的使用教程详解

1.1.1 小程序云函数API接口

小程序云函数API接口是指小程序调用云端函数的接口,(和wx.request()类似)。小程序提供了wx.cloud.callFunction()接口作为云函数API接口,它的属性如表所示。

属性类型默认值必填说明namestring是云函数名dataObject否传递给云函数的参数,在云函数中可通过 event 参数获取configObject否配置successFunction否返回云函数调用的返回结果failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)

官网示例代码

假设已有一个云函数 add:

?
1
2
3
exports.add = async (event, context, cb) => {
return event.x + event.y
}

在小程序端发起对云函数 add 的调用:

1.1.2 云函数的创建

创建云函数的方法是右击项目中的cloudfunctions文件夹,如下图所示,选择“新建Node.js云函数”选项,开发者工具会自动生成一个文件夹,在文本框中输入的文件夹即是云函数名。

创建好之后的界面:

在创建好云函数之后,即可根据自己的需要在main函数中编写自己的代码。使用回车结束云函数的创建还有一个好处是可以不用上传和部署云函数,系统会自动上传和部署函数到云端,即云函数对应的文件夹图标会自动变成云朵摸样。

2、云函数案例

本例分别采用云函数和本地函数实现加法操作和剑法操作,请对比区别。

firstcloudfunction.wxml:

?
1
2
3
4
5
<view class="data"><input placeholder="请输入a" focus="true" bindinput="binda"></input></view>
<view class="data"><input placeholder="请输入b" focus="true" bindinput="bindb"></input></view>
<view class="partition"></view>
<view class="arithmetic"><view bindtap=add><button size="mini" class=bt >+</button></view><view>{{add}}</view></view>
<view class="arithmetic"><view  bindtap=sub><button size="mini" class=bt >-</button></view><view>{{sub}}</view></view>

firstcloudfunction.js:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
const app = getApp()
Page({
data: {
a:1,
b:1,
add:,
sub:
},
onLoad: function() {
},
binda:function(e){
this.setData({
a: e.detail.value
})
console.log(e.detail.value)
},
bindb: function (e) {
this.setData({
b: e.detail.value
})
console.log(e.detail.value)
},
add:function(e){
var that=this;
wx.cloud.callFunction({
// 云函数名称
name: add,
// 传给云函数的参数
data: {
a: that.data.a,
b: that.data.b,
},
success: function (res) {
console.log(res.result.add)
var c = res.result.add
that.setData({
add: "a+b=" + c
})
},
fail: console.error
})
},
sub: function (e) {
var c = Number(this.data.a) - Number(this.data.b)
console.log(c)
this.setData({
sub: "a-b=" + c
})
}
})

代码讲解:binda和bindb两个点击函数从firstcloudfunction.wxml文件中获取用户输入的两个操作数a和b,减法函数sub是普通的本地JavaScript函数,而加法函数add则采用了wx.cloud.callFunction()接口调用云函数add。本例重点是云函数的创建和部署。

云函数add/index.js的代码如下:

?
1
2
3
exports.main = async (event, context) => {
return{add:Number(event.a)+Number(event.b)}
}

实现效果:

相关文章!

您可能感兴趣的文章:uni-app使用微信小程序云函数的步骤示例微信小程序利用云函数获取手机号码小程序云开发教程如何使用云函数实现点赞功能微信小程序云开发如何使用云函数生成二维码微信小程序云开发之使用云函数微信小程序云开发之云函数详解详解如何使用微信小程序云函数发送短信验证码

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微信小程序调用支付接口的完整流程记录
下一篇:小程序云开发教程如何使用云函数实现点赞功能
相关文章

 发表评论

暂时没有评论,来抢沙发吧~