73 lines
2.0 KiB
Vue
73 lines
2.0 KiB
Vue
<template>
|
||
<view class="container">
|
||
<unicloud-db ref="udb" v-slot:default="{data, pagination, loading, hasMore, error}" :collection="collectionList" field="bannerfile,open_url,title,sort,category_id,status,description">
|
||
<view v-if="error">{{error.message}}</view>
|
||
<view v-else-if="data">
|
||
<uni-list>
|
||
<uni-list-item v-for="(item, index) in data" :key="index" showArrow :clickable="true" @click="handleItemClick(item._id)">
|
||
<template v-slot:body>
|
||
<text>
|
||
<!-- 此处默认显示为_id,请根据需要自行修改为其他字段 -->
|
||
<!-- 如果使用了联表查询,请参考生成的 admin 项目中 list.vue 页面 -->
|
||
{{item._id}}
|
||
</text>
|
||
</template>
|
||
</uni-list-item>
|
||
</uni-list>
|
||
</view>
|
||
<uni-load-more :status="loading?'loading':(hasMore ? 'more' : 'noMore')"></uni-load-more>
|
||
</unicloud-db>
|
||
<uni-fab ref="fab" horizontal="right" vertical="bottom" :pop-menu="false" @fabClick="fabClick" />
|
||
</view>
|
||
</template>
|
||
|
||
<script>
|
||
const db = uniCloud.database()
|
||
export default {
|
||
data() {
|
||
return {
|
||
collectionList: "opendb-banner",
|
||
loadMore: {
|
||
contentdown: '',
|
||
contentrefresh: '',
|
||
contentnomore: ''
|
||
}
|
||
}
|
||
},
|
||
onPullDownRefresh() {
|
||
this.$refs.udb.loadData({
|
||
clear: true
|
||
}, () => {
|
||
uni.stopPullDownRefresh()
|
||
})
|
||
},
|
||
onReachBottom() {
|
||
this.$refs.udb.loadMore()
|
||
},
|
||
methods: {
|
||
handleItemClick(id) {
|
||
uni.navigateTo({
|
||
url: './detail?id=' + id
|
||
})
|
||
},
|
||
fabClick() {
|
||
// 打开新增页面
|
||
uni.navigateTo({
|
||
url: './add',
|
||
events: {
|
||
// 监听新增数据成功后, 刷新当前页面数据
|
||
refreshData: () => {
|
||
this.$refs.udb.loadData({
|
||
clear: true
|
||
})
|
||
}
|
||
}
|
||
})
|
||
}
|
||
}
|
||
}
|
||
</script>
|
||
|
||
<style>
|
||
</style>
|