欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于vue.js的分頁插件詳解

 更新時間:2017年11月27日 14:15:46   作者:AmberWu  
這篇文章主要為大家詳細介紹了基于vue.js的分頁插件,具有一定的參考價值,感興趣的小伙伴們可以參考一下

Vue.js 的目標是通過盡可能簡單的 API 實現(xiàn)響應(yīng)的數(shù)據(jù)綁定和組合的視圖組件。想了解更多,請戳http://cn.vuejs.org/

html代碼:

<div class="page-bar" v-else> 
 <ul> 
  <li style="width: 11%" v-if="showFirst"> 
  <a v-on:click="cur--"> 
   <<</a> 
  </li> 
  <li v-for="index in indexs" v-bind:class="{ 'active': cur == index}"> 
  <a v-on:click="btnClick(index)">{{index}}</a> 
  </li> 
  <li style="width: 11%" v-if="showLast"><a v-on:click="cur++"> >></a></li> 
  <li style="width: 22%;margin-left: 7%"><a>共<i>{{all}}</i>頁</a></li> 
 </ul> 
 </div> 

css部分,可根據(jù)自己的實際需要進行調(diào)整:

.page-bar { 
 margin-top: 21px; 
 margin-left: 11%; 
 } 
 
 .page-bar ul, 
 .page-bar li { 
 margin: 0px; 
 padding: 0px; 
 } 
 
 .page-bar ul li { 
 list-style: none; 
 border: 1px solid #ddd; 
 text-decoration: none; 
 position: relative; 
 float: left; 
 text-align: center; 
 padding: 1px 0; 
 margin-left: -1px; 
 line-height: 1.42857143; 
 color: #337ab7; 
 cursor: pointer; 
 width: 8%; 
 } 
 
 .page-bar li:first-child>a { 
 margin-left: 0px 
 } 
 
 .page-bar .active a { 
 color: #fff; 
 cursor: default; 
 background-color: #337ab7; 
 border-color: #337ab7; 
 } 
 
 .page-bar i { 
 font-style: normal; 
 color: #d44950; 
 margin: 0px 4px; 
 font-size: 12px; 
 } 

js部分:

首先要創(chuàng)建一個基本組件

var vm = new Vue({ 
 el: 'body', 
 data: { 
 list: null, 
 all: 1, //總頁數(shù) 
 cur: 1, //當前頁碼 
 }, 

繼而要利用computed計算頁碼,

 computed: { 
 indexs: function(index) { 
 var left = 1; 
 var right = this.all; 
 var ar = []; 
 if (this.all >= 11) { 
  if (this.cur > 5 && this.cur < this.all - 4) { 
  left = this.cur - 5; 
  right = this.cur + 4; 
  } else { 
  if (this.cur <= 5) { 
  left = 1; 
  right = 10; 
  } else { 
  right = this.all; 
  left = this.all - 9; 
  } 
  } 
 } 
 while (left <= right) { 
  ar.push(left); 
  left++; 
 } 
 return ar; 
 }, 
 showLast: function() { 
 if (this.cur == this.all) { 
  return false 
 } 
 return true 
 }, 
 showFirst: function() { 
 if (this.cur == 1) { 
  return false 
 } 
 return true 
 } 
 } 

要給 元素加v-on:click="cur++"事件,所以要在vue里加method方法:

methods: { 
 btnClick: function(items) { //頁碼點擊事件 
 if (items != this.cur) { 
  this.cur = items 
 } 
 } 
}, 

其實到這里基本上就差不多了,但是可以優(yōu)化一下,當用戶觸發(fā)點擊事件時,頁面發(fā)生改變,這時要通知其他組件做出改變。

 watch: { 
 cur: function(oldValue, newValue) { 
 console.log(arguments) 
 
 } 
 } 

觀察了cur數(shù)據(jù)當它改變的時候,可以獲取前后值。然后通知其他組件。

后期會在個人GitHub上提交完整版代碼

補充效果圖展示

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解項目升級到vue-cli3的正確姿勢

    詳解項目升級到vue-cli3的正確姿勢

    這篇文章主要介紹了詳解項目升級到vue-cli3的正確姿勢,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • Vue3中使用defineCustomElement 定義組件詳解

    Vue3中使用defineCustomElement 定義組件詳解

    這篇文章主要為大家介紹了Vue3中使用defineCustomElement 定義組件詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • Vue中babel.config.js配置示例詳解

    Vue中babel.config.js配置示例詳解

    Babel是一個JS編譯器,主要作用是將ECMAScript2015+ 版本的代碼,轉(zhuǎn)換為向后兼容的JS語法,以便能夠運行在當前和舊版本的瀏覽器或其它環(huán)境中,下面這篇文章主要給大家介紹了關(guān)于Vue中babel.config.js配置詳解的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • 在Vue.js中加載字體的正確方法

    在Vue.js中加載字體的正確方法

    這篇文章主要介紹了在Vue.js中加載字體的正確方法,本文通過實例圖文相結(jié)合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • Vue監(jiān)聽數(shù)據(jù)對象變化源碼

    Vue監(jiān)聽數(shù)據(jù)對象變化源碼

    這篇文章主要為大家詳細介紹了Vue監(jiān)聽數(shù)據(jù)對象變化的源碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • vue導出excel文件流中文亂碼問題及解決

    vue導出excel文件流中文亂碼問題及解決

    這篇文章主要介紹了vue導出excel文件流中文亂碼問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • 解決Vue 給mapState中定義的屬性賦值報錯的問題

    解決Vue 給mapState中定義的屬性賦值報錯的問題

    這篇文章主要介紹了解決Vue 給mapState中定義的屬性賦值報錯的問題,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • Vue3組件不發(fā)生變化如何監(jiān)聽pinia中數(shù)據(jù)變化

    Vue3組件不發(fā)生變化如何監(jiān)聽pinia中數(shù)據(jù)變化

    這篇文章主要給大家介紹了關(guān)于Vue3組件不發(fā)生變化如何監(jiān)聽pinia中數(shù)據(jù)變化的相關(guān)資料,pinia是Vue的存儲庫,它允許您跨組件/頁面共享狀態(tài),文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • vue.js 左側(cè)二級菜單顯示與隱藏切換的實例代碼

    vue.js 左側(cè)二級菜單顯示與隱藏切換的實例代碼

    這篇文章主要介紹了vue.js 左側(cè)二級菜單顯示與隱藏切換的實例代碼,需要的朋友可以參考下
    2017-05-05
  • vue2.0父子組件間通信的實現(xiàn)方法

    vue2.0父子組件間通信的實現(xiàn)方法

    本篇文章主要介紹了vue2.0父子組件間通信的實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-04-04

最新評論