https://uniapp.dcloud.net.cn/uniCloud/cf-database.html#get-collection
前端代码
<template>
<view class="db-demo">
<button type="primary" @click="addUser">插入一条用户数据</button>
<form @submit="onSubmit" class="user-form">
<input type="text" name="name" v-model="user.name" placeholder="请输入用户名">
<input type="text" name="tel" v-model="user.tel" placeholder="请输入电话">
<button form-type="submit">将用户信息插入到数据库中</button>
</form>
<view class="user-names">
<view class="row" v-for="item in userList">姓名:{{item.name}}</view>
</view>
<view class="kw">
<input type="text" placeholder="请输入关键字,搜索用于" v-model="keyword">
<button @click="getUsersList">搜索</button>
</view>
</view>
</template>
<script>
export default {
data() {
return {
user: {
name: '',
tel: ''
},
userList: [],
keyword:""
};
},
methods: {
getUsersList() {
uniCloud.callFunction({
name: "getUsersName",
data:{
keyword:this.keyword
},
success: (res) => {
console.log(res);
this.userList=res.result.data
},
fail: (err) => {
console.log(err);
}
})
},
addUser() {
console.log("addUser()");
uniCloud.callFunction({
name: 'addUser',
success: (res) => {
console.log(res);
},
fail: (err) => {
console.log(err);
}
})
},
onSubmit(e) {
let obj = e.detail.value;
if (obj.name == '') return
console.log(obj);
if (confirm("确认插入吗?")) {
uniCloud.callFunction({
name: "addUserByForm",
data: e.detail.value,
success: (res) => {
console.log(res);
this.user.name = ''
this.user.tel = ''
},
fail: (err) => {
console.log(err);
}
})
}
}
}
}
</script>
<style lang="less">
.db-demo {
width: 96%;
margin: 10rpx auto;
}
.kw{
margin: 20rpx auto;
}
</style>
云函数代码:
'use strict';
exports.main = async (event, context) => {
// 获取指定用户名称
const db = uniCloud.database()
// let res=await db.collection("users").doc("6511589bf08210d5151b5dec").get()
// let res=await db.collection("users").limit(3).get() //只获取3条
// let res=await db.collection("users").limit(2).skip(2).get() //只获取2条,从第2页开始
// skip和limit同时使用,用于数据分页
// let res=await db.collection("users").orderBy("_id","asc").get() // 默认 按id升序排列
// let res=await db.collection("users").orderBy("_id","desc").limit(4).get() // 按id降序排列
// let res=await db.collection("users").field("name",true).get() //只查询name和默认的_id字段.
// where条件查询
// let res=await db.collection("users").where({
// age:17,
// name:"石磊" //对象里可以写多个查询条件
// }).get()
// 查询年龄大于等于18岁的
/*const dbCmd = db.command;
let res = await db.collection("users").where({
// age: dbCmd.gt(17).and(dbCmd.lt(20)) // 获取users表中年龄大于17岁且小于20岁的女性用户
// age:dbCmd.and(dbCmd.gt(17),dbCmd.lt(20)), // 等价上面写法
age: dbCmd.or(dbCmd.lt(18), dbCmd.gt(22)) // 查找年龄小于18的,或者大于22的用户
// gender:"女"
}).get() */
let { keyword }=event
// 正则表达式查询
let res = await db.collection("users").where({
// name: /^王/ig //只查找姓王的用户
name:new RegExp(keyword,'ig')
}).get()
//返回数据给客户端
return res
};
标签:name,get,res,数据库,db,uniCloud,let,操作,users
From: https://www.cnblogs.com/unity-yancy/p/17729401.html