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>
|