<template> <view> <!--查询只能指定一个字段,请自行指定,生成时并未生成,以xxx代替--> <u-search :show-action="false" v-model="searchForm.xxx" @change="inputWord" margin="20rpx 50rpx"></u-search> <u-swipe-action> <view v-for="(row, index) in dataList" :key="index"> <u-swipe-action-item @click="del(row.id)" :key="row.id" :threshold="60" duration="500" :options="[ { text: '删除', style: { backgroundColor: '#f56c6c' } }]"> <u-cell-group> <u-cell @click="edit(row.id)"> <view slot="title" class="content"> <view class="text-bold text-grey"> <view class="ellipsis-description"> 姓名:{{row.name}} </view> </view> <view class="text-bold text-grey"> <view class="ellipsis-description"> 头像:<view class="cu-avatar lg margin-left-sm" :style="`background-image:url('${row.teImage}')`" ></view> </view> </view> </view> </u-cell> </u-cell-group> </u-swipe-action-item> </view> </u-swipe-action> <uni-fab horizontal="right" vertical="bottom" @fabClick="add" ></uni-fab> <u-loadmore :status="status" @loadmore="loadmore" :line="true" /> <u-gap height="20" bgColor="#fff"></u-gap> </view> </template> <script> import testMobileService from '@/api/test/mobile/testMobileService' export default { data () { return { status: 'loadmore', searchForm: { name: '' }, dataList: [], tablePage: { pages: 0, currentPage: 0, pageSize: 10, orders: [{ column: "a.create_time", asc: false }] }, loading: false, } }, onLoad() { this.loadmore() }, methods: { // 新增 add (){ uni.navigateTo({ url: '/pages/test/mobile/TestMobileForm' }) }, // 修改 edit (id) { uni.navigateTo({ url: '/pages/test/mobile/TestMobileForm?id='+id }) }, // 删除 del (id) { uni.showModal({ title: '提示', content: '您确认要删除数据吗', showCancel: true, success: (res) => { if (res.confirm) { testMobileService.delete(id).then((data)=>{ uni.showToast({ title: data, icon:"success" }) this.doSearch() }) } } }); }, // 输入监听 inputWord(e){ this.searchTimer && clearTimeout(this.searchTimer) this.searchTimer = setTimeout(()=>{ this.doSearch() },300) }, // 搜索 doSearch(){ this.dataList = []; this.tablePage.currentPage = 0; this.tablePage.pageSize = 10; this.tablePage.pages = 0; this.loadmore() }, onReachBottom() { this.loadmore() }, /*获取数据列表 */ loadmore() { if(this.tablePage.currentPage!==0 && this.tablePage.pages <= this.tablePage.currentPage ) { this.status = 'nomore'; return; } this.tablePage.currentPage = ++ this.tablePage.currentPage; //联网加载数据 this.status = 'loading'; testMobileService.list({ 'current': this.tablePage.currentPage, 'size': this.tablePage.pageSize, 'orders': this.tablePage.orders, ...this.searchForm }).then((data) => { //追加新数据 this.dataList=this.dataList.concat(data.records); this.tablePage.pages = data.pages; if(this.tablePage.pages <= this.tablePage.currentPage){ this.status = 'nomore' } else { this.status = 'loadmore' } }) } } } </script>