使用基于腾讯云、阿里云serverless再封装的uniCloud
说到serveless,当然是腾讯云和阿里云啦,而我想两种环境切着来玩,那么这个时候我选择了uniCloud,uniCloud其实是对腾讯云和阿里云进行了再次封装。一、新键项目(老项目右键创建uniCloud云开发环境)1、勾选启用uniCloud,后面可选阿里云和腾讯云2、生成文件夹3、右键选择云空间服务(没有创建的云服务空间的选择第二个,或者地址)4、右键新建云函数新建完成之后,邮件pay-a
说到serveless,当然是腾讯云和阿里云啦,而我想两种环境切着来玩,那么这个时候我选择了uniCloud,uniCloud其实是对腾讯云和阿里云进行了再次封装。
一、新键项目(老项目右键创建uniCloud云开发环境)
1、勾选启用uniCloud,后面可选阿里云和腾讯云
2、生成文件夹
3、右键选择云空间服务(没有创建的云服务空间的选择第二个,或者地址)
4、右键新建云函数
新建完成之后,邮件pay-add
云函数上传部署(当然你也可以上传并运行(测试之类的))
5、新建云数据库
方式一 :右键cloudfunctions
文件夹,选择创建db_init.json
方式二:通过管理后台–>地址,创建自己的表
这里我已经创建了3张表,并点击新增记录去增加字段
6、通过客户端操作上传数据到云数据库
这里对pay
表新增数据
对步骤4中新建的云函数pay-add
编写
'use strict';
const db=uniCloud.database()
exports.main = async (event, context) => {
// 插入数据
let res = await db.collection('pay').add(event)
return res;
};
紧接着右键上传部署,到这里云函数操作数据库的阶段完成,剩下的就是客户端调用云函数。
7、客户端调用云函数
通过uniCloud.callFunction来调用
// promise方式
uniCloud.callFunction({
name: 'test',
data: { a: 1 }
})
.then(res => {});
// callback方式
uniCloud.callFunction({
name: 'test',
data: { a: 1 },
success(){},
fail(){},
complete(){}
});
对这个进行简要的封装一下
Vue.prototype.$cloud = async function(name = "", params = {}) {
await uniCloud.callFunction({
name: name,
data: params
})
}
调用保存:
save(){
//保存记录
this.$cloud('pay-add',this.form)
},
响应:
看这都ok了,再去云数据库中查看一下,可以看到这里新增了一条数据
千里之行 始于足下
更多推荐
所有评论(0)