列表页面
<template>
<view>
<unicloud-db ref="dbRef" v-slot:default="{data, loading, error, options}" collection="connect">
<view v-if="error">{{error.message}}</view>
<view v-else>
<uni-list>
<uni-list-item v-for="item in data" :key="item._id"
:title="item.name"
:note="item.tel"
showArrow
clickable
@click.native="toNext('/pages/test/update?item='+JSON.stringify(item))">
</uni-list-item>
</uni-list>
</view>
</unicloud-db>
</view>
</template>
<script setup>
import {ref} from "vue"
import {onShow} from "@dcloudio/uni-app"
const dbRef = ref();
onShow(() => {
dbRef.value?.refresh();
})
const toNext = (url) => {
uni.navigateTo({
url
})
}
</script>
<style>
</style>
修改页面:
<template>
<view>
<uni-easyinput v-model="_d.form.name" placeholder="姓名" />
<uni-easyinput v-model="_d.form.tel" placeholder="电话" />
<button @click="handleUpdate">修改</button>
</view>
</template>
<script setup>
import {reactive} from "vue";
import {onLoad} from "@dcloudio/uni-app"
const _d = reactive({
form: {_id: '',name: '',tel: '',}
})
onLoad(options => {
_d.form = JSON.parse(options.item);
})
const handleUpdate = () => {
const db = uniCloud.database();
let params = {..._d.form};
delete params._id
db.collection('connect').doc(_d.form._id).update(params).then(res => {
if(res.result.errCode == 0) {
uni.navigateBack()
}
})
}
</script>
<style>
</style>