最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue+Element-ui前端實(shí)現(xiàn)分頁(yè)效果

 更新時(shí)間:2020年11月15日 14:48:17   作者:糖叁  
這篇文章主要為大家詳細(xì)介紹了vue+Element-ui前端實(shí)現(xiàn)分頁(yè)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了vue+Element-ui前端實(shí)現(xiàn)分頁(yè)效果的具體代碼,供大家參考,具體內(nèi)容如下

分頁(yè)技術(shù)

分頁(yè)技術(shù)的概念

分頁(yè)就是將所有的數(shù)據(jù)分段展示給用戶,用戶看到的可能不是全部的數(shù)據(jù),而是其中一部分,用戶可以通過(guò)點(diǎn)擊頁(yè)碼來(lái)查找自己需要的內(nèi)容,也可以通過(guò)模糊查詢獲取符合內(nèi)容的數(shù)據(jù)

分頁(yè)的意義

分頁(yè)確實(shí)有效,但它一定會(huì)加大系統(tǒng)的復(fù)雜度,但可否不分頁(yè)呢?如果數(shù)據(jù)量少的話當(dāng)然可以.但是對(duì)于企業(yè)信息系統(tǒng)來(lái)說(shuō)數(shù)據(jù)量不會(huì)限制在一個(gè)小范圍內(nèi).如果不顧一切的Select * from某個(gè)表,再將返回的數(shù)據(jù)一古腦的扔給客戶,即使客戶能夠忍受成千上萬(wàn)足夠讓人眼花繚亂的表格式數(shù)據(jù),繁忙的網(wǎng)絡(luò),緊張的服務(wù)器也會(huì)提出它們無(wú)聲的抗議,甚至有時(shí)會(huì)以徹底的罷工

前端實(shí)現(xiàn)分頁(yè)效果

在el-tree控件中將內(nèi)容按照一個(gè)頁(yè)面顯示十條數(shù)據(jù),來(lái)實(shí)現(xiàn)分頁(yè)的效果

實(shí)現(xiàn)效果:el-tree

<template>
 <div class="big">
 <div class="top">
 <el-input placeholder="搜索" v-model="searchData" @input="search"></el-input>
 </div>
 <div class="middle">
 <el-tree :data="list">
 <span slot-scope="{ node, data }">
  <span class="el-icon-tickets"></span>
  <span>{{data.name}} {{data.age}}</span>
 </span>
 </el-tree>
 </div>
 <div class="bottom">
 <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" background :current-page="page"
 :page-size="limit" layout="prev, pager, next" :total="total"></el-pagination>
 </div>
 </div>
</template>
<script>
 export default {
 data() {
 return {
 data: [{
  name: 'aa',
  age: 12
  },
  {
  name: 'bb',
  age: 13
  }
 ],//列舉一部分的數(shù)據(jù)
 list: [], // 顯示的數(shù)據(jù)
 limit: 10, // 條數(shù),每一頁(yè)顯示的數(shù)量
 total: 20, // 所有的數(shù)量
 page: 1, //當(dāng)前頁(yè)
 searchData: '' // 搜索內(nèi)容
 }
 },
 created() {
 this.pageList()
 },
 methods: {
 pageList() {
 this.getList()
 },
 // 處理數(shù)據(jù)
 getList() {
 // es6過(guò)濾得到滿足搜索條件的展示數(shù)據(jù)list
 var list = this.data.filter((item, index) =>
  item.name.includes(this.searchData)
 ) // 搜索符號(hào)條件的內(nèi)容
 console.log(list)
 this.list = list.filter((item, index) =>
  index < this.page * this.limit && index >= this.limit * (this.page - 1)
 ) //根據(jù)頁(yè)數(shù)顯示相應(yīng)的內(nèi)容
 this.total = list.length
 },
 // 當(dāng)每頁(yè)數(shù)量改變
 handleSizeChange(val) {
 console.log(`每頁(yè) ${val} 條`);
 this.limit = val
 this.getList()
 },
 // 當(dāng)當(dāng)前頁(yè)改變
 handleCurrentChange(val) {
 console.log(`當(dāng)前頁(yè): ${val}`);
 this.page = val
 this.getList()
 },
 // 搜索過(guò)濾數(shù)據(jù)
 search() {
 this.page = 1
 this.getList()
 }
 },
 }
</script>

el-table實(shí)現(xiàn)分頁(yè)效果也是類似的

展示效果

html的代碼,js的代碼和tree的分頁(yè)差不多,el-table的分頁(yè)添加了可以選擇顯示的數(shù)量,以及跳轉(zhuǎn)頁(yè)碼

<div class="big">
  <el-row>
   <el-col :span="21">
    <el-input v-model="searchData" @input="search" placeholder="輸入姓名搜索"></el-input>
   </el-col>
   <el-col :span="3">
    <el-button type="success" @click="search">搜索</el-button>
   </el-col>
  </el-row>
  <el-table :data="list" border>
   <el-table-column label="姓名" prop="name"></el-table-column>
   <el-table-column label="年齡" prop="age"></el-table-column>
  </el-table>
  <div style="text-align: center;">
 <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
  :current-page="page" :page-sizes="[1, 2,5, 10]" :page-size="limit"
  layout="total, sizes, prev, pager, next, jumper" :total="total">
 </el-pagination>
 </div>
</div>

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

承德市| 拉萨市| 礼泉县| 平潭县| 三亚市| 沅陵县| 五大连池市| 金昌市| 赞皇县| 花莲县| 报价| 连山| 靖远县| 元氏县| 罗江县| 新野县| 静安区| 银川市| 邯郸县| 齐河县| 息烽县| 错那县| 张家界市| 上虞市| 赤城县| 田东县| 佛山市| 乌海市| 资阳市| 樟树市| 宁河县| 武宣县| 昌平区| 商南县| 峡江县| 麦盖提县| 廉江市| 施甸县| 武夷山市| 渭南市| 宝应县|