新建项目
新建一个uni-app项目 启动云开发 选择想要的云服务
在此之前要先完成uniCloud的实名认证
确认应用的应用标识appleID已经获取
云空间
有在Web控制台创建过云空间,就选择:关联云服务空间或项目
如果没有,就创建cloudfuctions目录 用来放置云函数
创建云函数
在cloudfunction目录新建一个云函数,以test为例
云函数
新云函数的基础样式
选择上传并运行,等待控制台完成上传成功
上传成功
可以去web端云函数列表查看是否有云函数出现
在页面请求云函数
pages/index/index.vue
<template>
<view class="content">
<!-- 定义请求按钮 -->
<button type="default" @click="btnClick">请求</button>
</view>
</template>
<script>
export default {
methods: {
// 请求方式
btnClick() {
// 调取云函数
uniCloud.callFunction({
// 云函数名字
name: 'test',
// 传输数据
data: {
name: '测试数据'
},
// 成功
success(res) {
console.log(res);
},
// 失败
fail(e) {
console.log(e);
}
})
}
},
}
</script>
<style>
.content {
padding: 30px;
}
</style>
uniCloud/cloudfunctions/test/index.js
'use strict';
exports.main = async (event, context) => {
//event为客户端上传的参数
console.log('event : ', event)
return {
code: 200,
message: 'ok',
data: event
}
};
成功样式
注意:每次修改云函数,都需要上传
云数据库
创建云数据库
增删改查
添加数据
这里添加一个对象数组
'use strict';
//对数据库的对象获取
const db = uniCloud.database()
exports.main = async (event, context) => {
// 对mydatabase数据库的获取
const collection = db.collection('mydatabase')
//event为客户端上传的参数
console.log('event : ', event)
// 添加数据
let res = await collection.add(
[
{
_id: '01',
name: 'test01'
},
{
_id: '02',
name: 'test02'
}
])
return {
code: 200,
message: 'ok',
data: event
}
};
可以在web端云数据库查看
删除数据
删除_id为01的数据
'use strict';
//对数据库的对象获取
const db = uniCloud.database()
exports.main = async (event, context) => {
// 对mydatabase数据库的获取
const collection = db.collection('mydatabase')
//event为客户端上传的参数
console.log('event : ', event)
// 删除
let res = await collection.doc('01').remove()
console.log(JSON.stringify(res))
return {
code: 200,
message: 'ok',
data: event
}
};
刷新web控制台云数据库,_id为01的数据被删掉了
修改数据
修改_id
为 02
的 name
为 update test
'use strict';
//对数据库的对象获取
const db = uniCloud.database()
exports.main = async (event, context) => {
// 对mydatabase数据库的获取
const collection = db.collection('mydatabase')
//event为客户端上传的参数
console.log('event : ', event)
// 修改数据
let res = await collection.doc('02').update({
name: 'update test'
})
console.log(JSON.stringify(res))
return {
code: 200,
message: 'ok',
data: event
}
};
刷新web控制台云数据库,name修改为update test
更新数据
'use strict';
//对数据库的对象获取
const db = uniCloud.database()
exports.main = async (event, context) => {
// 对mydatabase数据库的获取
const collection = db.collection('mydatabase')
//event为客户端上传的参数
console.log('event : ', event)
// 更新数据
let res = await collection.doc('01').set({
name: 'test',
key: '出现更新',
})
console.log(JSON.stringify(res))
return {
code: 200,
message: 'ok',
data: event
}
};
查找数据
'use strict';
//对数据库的对象获取
const db = uniCloud.database()
exports.main = async (event, context) => {
// 对mydatabase数据库的获取
const collection = db.collection('mydatabase')
//event为客户端上传的参数
console.log('event : ', event)
// 查找数据
let res = await collection.where({
key: '出现更新'
}).get()
console.log(JSON.stringify(res))
return {
code: 200,
message: 'ok',
data: event
}
};
在控制台可查看查找的数据