亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在vue項目中使用iview實現一個分頁查詢功能

發布時間:2020-11-18 14:58:00 來源:億速云 閱讀:327 作者:Leah 欄目:開發技術

這篇文章給大家介紹在vue項目中使用iview實現一個分頁查詢功能,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

vue+iview 分頁及刪、查功能實現

首先要想實現分頁功能必須得知道 當前頁碼、每頁大小、總數目。

iview對分頁的功能支持還是很強大的,有很多鉤子函數

具體實現看后端返回的數據

<template>
 <div v-if="this.$store.state.user.userType == 0 || this.$store.state.user.userType == 1">
  <Input type="text" search enter-button placeholder="根據施工人員姓名查找" v-model="peopleName" @input="search"/>
  <Table width="100%" :columns="peopleCol" :data="peopleDat"></Table>
  <!--通過sync修飾符可以動態獲取頁碼-->
  <Page :total="dataCount" :current.sync="current" :page-size="pageSize" show-total class="paging" @on-change="changePage"></Page>
  
  <!--該modal是刪除提醒框-->
  <Modal v-model="confirmDelete" width="360">
   <p slot="header" >
    <Icon type="ios-information-circle"></Icon>
    <span>刪除確認</span>
   </p>
   <div >
    <p>此操作不可恢復,確定要刪除嗎?</p>
   </div>
   <div slot="footer">
    <Button size="large" @click="cancelDelete">取消</Button>
    <Button type="error" size="large" @click="deleteConfirm">刪除</Button>
   </div>
  </Modal>
 </div>
</template>
<script>
 export default {
  components: {
   addWorker,
   updateWorker
  },
  data () {
   return {
    selectedID:'',//刪除選中的ID
    confirmDelete:false,//刪除提示框
    current:1,
    isShow:false,
    selectedList:{},//選中施工人員的id值
    peopleName:'',
    dataCount:0,//總條數
    pageSize:2,//每頁顯示數據條數
    peopleDat: [],
    peopleCol: [
     {
      title: '操作',
      key: 'action',
      width: 120,
      render: (h, params) => {
       return h('Button', {
         props: {
          type: 'error',
          size: 'small'
         },
         on:{
          click: ()=>{
           this.confirmDelete=true
           this.delete(params.row.peopleID)
          }
         }
        }, '刪除')
      }
     }
    ],
   }
  },
  mounted() {
   this.getWorkerList()
  },
  methods:{
   getWorkerList(){//組件初始化顯示的數據
    const currPage=1
    const pageSize=this.pageSize
    //下面是向后臺發送請求
    setTimeout(async()=>{
     const r=await getWorkers(currPage,pageSize)
     if(r.data.success){
      this.dataCount=r.data.list.count//初始化總條數
      this.peopleDat=r.data.list.data//默認頁列表渲染數據
      console.log(r)
     }
    })
   },
   changePage(index){//頁碼改變觸發的函數
    //index當前頁碼
    const currPage=index
    const pageSize=this.pageSize
    setTimeout(async ()=>{
     const r=await changePage(currPage,pageSize)
     if(r.data.success){
      this.peopleDat=r.data.list.data//當前頁列表數據
     }
    })
   },
   search(){
    const peopleName=this.peopleName
    const pageSize=this.pageSize
    setTimeout(async()=>{
     const r=await search(peopleName,pageSize)
     if(r.data.success){
      this.peopleDat=r.data.list.data
      this.dataCount=r.data.list.count//如果不設置總條數那么當精確查詢時每頁都會有數據這得看后端返回的數據有沒有這些數據
     } else {
      this.$Message.warning('查詢失敗!')
     }
    })
   },
   delete(peopleID){
    this.selectedID=peopleID
   },
   deleteConfirm(){
    const id=this.selectedID
    setTimeout(async ()=>{
     const r=await deleteWorker(id)
     if(r.data.success){
      //這里做的一個功能是當你刪除某頁數據后立即刷新當前頁的數據
      this.changePage(this.current)//更新當前頁碼的數據
      this.$Message.success('刪除成功!')
     } else{
      this.$Message.warning('刪除失敗!')
     }
    })
    this.confirmDelete=false
   },
   cancelDelete(){
    this.confirmDelete=false
    this.$Message.info('你取消了刪除操作')
   }
  }
 }
</script>
<style scoped>
 .paging{
  float:left;
  margin-top:10px;
 }
</style>

關于在vue項目中使用iview實現一個分頁查詢功能就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

高尔夫| 景泰县| 扶绥县| 桃江县| 宜宾县| 曲阜市| 全南县| 南涧| 屏南县| 东城区| 林州市| 桐柏县| 尼木县| 通化市| 平远县| 皋兰县| 宝清县| 桐庐县| 九龙坡区| 浪卡子县| 资讯| 轮台县| 黄龙县| 嘉义县| 迁安市| 张家口市| 盐山县| 乌海市| 库尔勒市| 额敏县| 湛江市| 清水河县| 石嘴山市| 荆州市| 航空| 三台县| 和林格尔县| 嘉黎县| 漳州市| 通山县| 石泉县|