基於Ant Design Vue創建的vue項目中表格組件的使用


近期項目中使用到了ant design,下面來講一下里面table組件的使用

1.基礎:引入ant-design-vue組件

2

   <a-table
      v-else
      :columns="columns"
      :dataSource="data"
      :pagination="pagination"
      @change="pageChange"
      :loading='loading'
      >
    </a-table>

  其中:columns表示的是表頭:

const columns = [
  {
    title: '姓名',
    key: 'name ',
    dataIndex: 'name',-------需要和后台返回的數據同名
    align: 'center',
    width: '30%'----寬度,可以指定也可以直接為數值
  },
  {
    title: '電話',
    key: 'phone',
    dataIndex: 'phone',
    align: 'center',
    width: '30%'
  },
  {
    title: '操作',
    key: 'action',
    scopedSlots: { customRender: 'action' },--------后台返回的對象,數組,或者刪除編輯操作,不便直接展示-------此處即表示渲染action插槽
    align: 'center',
   width: '30%'
  }
]

  dataSource:表示返回的數據,將后台返回的數據賦值即可

  pagination:設置當前的currentPage(當前頁碼),pageSize(每頁數據條數),total(數據總條數)下面是pagination的寫法,可以在請求數據的時候,傳入相應的值同時為total賦值

 pagination: {
        pageSize: 6,
        current: 1,
        total: 0
},
pageChange:翻頁,再次調用查詢接口,傳入相應頁碼,頁面數據條數即可
 pageChange(pagination) {
      this.pagination = pagination
      this.select()
}
loading是加載動畫。當數據未顯示的時候可以使用loading為true,待獲取到數據,改為false即可
插槽使用:
1  <div slot="action" slot-scope="text, record">----------record即每條數據,相當於v-for中定義的item,如有編輯操作,則根據需要傳遞值
2         <template>
3           <a @click="Delete(record)" style="color:#DC322F;">刪除</a>
4         </template>
5   </div>

 

  <span slot="address" slot-scope="text,record">
        {{record.time}}
        <br />
        {{record.address}}
  </span>

第一次使用這個框架,部分解決方法不夠簡便,只在於能夠實現功能,如有高手。歡迎指正


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM