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

利用VUE框架,實(shí)現(xiàn)列表分頁(yè)功能示例代碼

 更新時(shí)間:2017年01月12日 14:05:59   作者:充滿智慧的眼睛  
本篇文章主要介紹了利用VUE框架,實(shí)現(xiàn)列表分頁(yè)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。

先來(lái)看一下效果圖:

這里寫圖片描述 

這里寫圖片描述 

這里寫圖片描述

功能描述:

1. 點(diǎn)擊頁(yè)面序號(hào)跳轉(zhuǎn)到相應(yīng)頁(yè)面;

2. 點(diǎn)擊單左/單右,向后/向前跳轉(zhuǎn)一個(gè)頁(yè)面;

3. 點(diǎn)擊雙左/雙右,直接跳轉(zhuǎn)到最后一頁(yè)/第一頁(yè);

4. 一次顯示當(dāng)前頁(yè)面的前三個(gè)與后三個(gè)頁(yè)面;

5. 始終顯示最后一個(gè)頁(yè)面;

HTML:

 <!-- 分頁(yè)開(kāi)始 -->
<div class="u-pages" style="margin-bottom:20px; margin-top:10px;">
 <ul>
   <li v-if="showPre" class="crt"><a v-on:click="jumpFirst(cur)"> &lt;&lt; </a></li>
   <li v-if="showPre" class="crt"><a v-on:click="minus(cur)"> &lt; </a></li>

   <template v-for="index in indexs" >
     <li class="{{classRenderer(index)}}">
       <a v-on:click="btnClick(index)" >{{index}}</a>
     </li>
   </template>

   <li v-if="showMoreTail" class="crt">..</li>
   <li class="{{classRenderer(pageNo)}}"><a @click="btnClick(pageNo)">{{pageNo}}</a></li>
   <li v-if="showTail" class="crt"><a v-on:click="plus(cur)">&gt;</a></li>
   <li v-if="showTail" class="crt"><a v-on:click="jumpTail(cur)">&gt;&gt;</a></li>

 </ul>
</div>
<!-- 分頁(yè)結(jié)束 -->

HTML方法分析: 

1、

<li class="{{classRenderer(index)}}">

classRenderer()方法實(shí)現(xiàn)了當(dāng)點(diǎn)擊頁(yè)面索引是,點(diǎn)擊頁(yè)面獲得選中效果

2、

<a v-on:click="btnClick(index)" >{{index}}</a> 

btnClick()方法,實(shí)現(xiàn)了點(diǎn)擊頁(yè)面索引,跳轉(zhuǎn)到相應(yīng)頁(yè)面

showPre showTail

showPre控制跳轉(zhuǎn)到第一頁(yè)與跳轉(zhuǎn)到前一頁(yè)的按鈕的顯示與消除

showTail控制跳轉(zhuǎn)到最后一頁(yè)與跳轉(zhuǎn)到后一頁(yè)的按鈕的顯示與消除

cur

記錄當(dāng)前頁(yè)序號(hào)

jumpFirst(cur) minus(cur) plus(cur) jumpTail(cur)

實(shí)現(xiàn)按鈕跳轉(zhuǎn)功能

JS:

 module.exports = {
    data: function () {
      return {
        cur:1,
        showTail:true,
        showMorePre: false,
        showMoreTail: false,       

      }
    },
    methods:{
    jumpFirst:function(data){
        var $this = this;
        data = 1;
        $this.cur = data;
        if (data == 1 )
        {
          $this.$set("showPre", false);
        }else
        {
          $this.$set("showPre", true);
        }
        $this.$am.ajax({
          url:window.$ApiConf.api_order_detail_list,
          type:'GET',
          data:{start: 1},
          success: function(data){
            console.log(data);
            $this.$set("records", data.record.records);
            $this.$set("start", data.record.query.start);
            $this.$set("total", data.record.query.total);
            $this.$set("limit", data.record.query.limit);
          }
        })
        $this.$set("showTail", true);
        return data;
      },
      minus:function(data){
        var $this = this;
        data--;
        $this.cur = data;
        $this.$set("showTail", true);
        if(data == 1){
          $this.$set("showPre", false);

        }else{
          $this.$set("showPre", true);
        }

        $this.$am.ajax({
          url:window.$ApiConf.api_order_detail_list,
          type:'GET',
          data:{start: 1 + $this.limit * (data-1) },
          success:function(data){
            console.log(data);
            $this.$set("records", data.record.records);
            $this.$set("start", data.record.query.start);
            $this.$set("total", data.record.query.total);
            $this.$set("limit", data.record.query.limit);
          }
        })
        return data;
      },
      plus: function(data){
        var $this = this;
        data++;
        $this.cur = data;
        $this.$set("showPre", true);
        if (data == $this.pageNo)
        {
          $this.$set("showTail", false);
        }else
        {
          $this.$set("showTail", true);
        }
        $this.$am.ajax({
          url:/* 這里寫上你自己請(qǐng)求數(shù)據(jù)的路徑 */,
          type:'GET',
          data:{start: 1 + $this.limit * (data-1) },
          success:function(data){
            console.log(data);
            $this.$set("records", data.record.records);
            $this.$set("start", data.record.query.start);
            $this.$set("total", data.record.query.total);
            $this.$set("limit", data.record.query.limit);
          }
        })
        return data;
      },
      classRenderer:function(index){
        var $this = this;
        var cur = $this.cur;
        if(index != cur){
          return 'crt';
        }
        return '';
      },
      btnClick:function(data){
        var $this = this;
        if(data == 1){
          $this.$set("showPre", false);

        }else{
          $this.$set("showPre", true);
        }
        if (data == $this.pageNo)
        {
          $this.$set("showTail", false);
        }else
        {
          $this.$set("showTail", true);
        }
        if (data != $this.cur)
        {
          $this.cur = data;
          $this.$am.ajax({
            url:window.$ApiConf.api_order_detail_list,
            type:'GET',
            data:{start: 1 + $this.limit * (data-1) },
            success:function(data){
              console.log(data);
              $this.$set("records", data.record.records);
              $this.$set("start", data.record.query.start);
              $this.$set("total", data.record.query.total);
              $this.$set("limit", data.record.query.limit);
            }
          })
        }
      },
      jumpTail:function(data){
        var $this = this;
        data = $this.pageNo;
        $this.cur = data;
        if (data == $this.pageNo)
        {
          $this.$set("showTail", false);
        }else
        {
          $this.$set("showTail", true);
        }
        $this.$am.ajax({
          url:window.$ApiConf.api_order_detail_list,
          type:'GET',
          data:{start: 1 + $this.limit * (data-1) },
          success:function(data){
            console.log(data);
            $this.$set("records", data.record.records);
            $this.$set("start", data.record.query.start);
            $this.$set("total", data.record.query.total);
            $this.$set("limit", data.record.query.limit);
          }
        })
        $this.$set("showPre", true);
        return data;
      },
     computed: {
      //*********************分頁(yè)開(kāi)始******************************//
      indexs: function(){
        var $this = this;
        var ar = [];

        if ($this.cur > 3)
        {
          ar.push($this.cur - 3);
          ar.push($this.cur - 2);
          ar.push($this.cur - 1);

        }else
        {
          for (var i = 1; i < $this.cur; i++)
          {
            ar.push(i);
          }
        }
        if ($this.cur != $this.pageNo)
        {
          ar.push($this.cur);
        }

        if ( $this.cur < ( $this.pageNo - 3 ) )
        {
          ar.push($this.cur + 1);
          ar.push($this.cur + 2);
          ar.push($this.cur + 3);
          if ( $this.cur < ( $this.pageNo - 4 ) )
          {
            $this.$set("showMoreTail", true);
          }
        }else
        {
          $this.$set("showMoreTail", false);
          for (var i = ($this.cur + 1); i < $this.pageNo; i++)
          {
            ar.push(i);
          }
        }
        return ar;
      }
      //*********************分頁(yè)結(jié)束******************************//
    }
}   

JS功能分析:indexs用于記錄一共有多少頁(yè)面

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

相關(guān)文章

  • Vue中掛載全局的方法詳解

    Vue中掛載全局的方法詳解

    有時(shí)候,頻繁調(diào)用的函數(shù),我們需要把它掛載在全局的vue原型上,方便調(diào)用,這篇文章主要為大家詳細(xì)介紹了Vue中掛載全局的具體操作,需要的可以參考下
    2024-03-03
  • Vue中的組件詳談

    Vue中的組件詳談

    這篇文章主要介紹了Vue的組件,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-10-10
  • vue2中Print.js的使用超詳細(xì)講解(pdf、html、json、image)

    vue2中Print.js的使用超詳細(xì)講解(pdf、html、json、image)

    項(xiàng)目中有用到打印功能,網(wǎng)上就找了print.js,下面這篇文章主要給大家介紹了關(guān)于vue2中Print.js使用(pdf、html、json、image)的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • vue使用天地圖、openlayers實(shí)現(xiàn)多個(gè)底圖疊加顯示效果

    vue使用天地圖、openlayers實(shí)現(xiàn)多個(gè)底圖疊加顯示效果

    這篇文章主要介紹了vue使用天地圖、openlayers實(shí)現(xiàn)多個(gè)底圖疊加顯示,根據(jù)返回的經(jīng)緯度列表通過(guò)天地圖、openlayers實(shí)現(xiàn)底圖添加,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2022-04-04
  • vue實(shí)現(xiàn)word,pdf文件的導(dǎo)出功能

    vue實(shí)現(xiàn)word,pdf文件的導(dǎo)出功能

    這篇文章給大家介紹了vue實(shí)現(xiàn)word或pdf文檔導(dǎo)出的功能,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2018-07-07
  • Vue代碼分割懶加載的實(shí)現(xiàn)方法

    Vue代碼分割懶加載的實(shí)現(xiàn)方法

    這篇文章主要給大家介紹了關(guān)于Vue代碼分割懶加載的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • vue+canvas繪制時(shí)間軸的方法

    vue+canvas繪制時(shí)間軸的方法

    這篇文章主要為大家詳細(xì)介紹了vue+canvas繪制時(shí)間軸的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Vue電商網(wǎng)站首頁(yè)內(nèi)容吸頂功能實(shí)現(xiàn)過(guò)程

    Vue電商網(wǎng)站首頁(yè)內(nèi)容吸頂功能實(shí)現(xiàn)過(guò)程

    電商網(wǎng)站的首頁(yè)內(nèi)容會(huì)比較多,頁(yè)面比較長(zhǎng),為了能讓用戶在滾動(dòng)瀏覽內(nèi)容的過(guò)程中都能夠快速的切換到其它分類。需要分類導(dǎo)航一直可見(jiàn),所以需要一個(gè)吸頂導(dǎo)航的效果。目標(biāo):完成頭部組件吸頂效果的實(shí)現(xiàn)
    2023-04-04
  • vue.js 底部導(dǎo)航欄 一級(jí)路由顯示 子路由不顯示的解決方法

    vue.js 底部導(dǎo)航欄 一級(jí)路由顯示 子路由不顯示的解決方法

    下面小編就為大家分享一篇vue.js 底部導(dǎo)航欄 一級(jí)路由顯示 子路由不顯示的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • Vuex 進(jìn)階之模塊化組織詳解

    Vuex 進(jìn)階之模塊化組織詳解

    這篇文章主要介紹了Vuex 進(jìn)階之模塊化組織詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01

最新評(píng)論

台前县| 桃源县| 桑日县| 云龙县| 宁武县| 兴安县| 石楼县| 松溪县| 苗栗市| 鹿邑县| 呼和浩特市| 波密县| 鹿邑县| 巴青县| 凤台县| 天等县| 东乡| 眉山市| 淳化县| 策勒县| 南通市| 通辽市| 武清区| 崇仁县| 宁海县| 天津市| 惠东县| 公安县| 唐山市| 社旗县| 阜平县| 兖州市| 安庆市| 余庆县| 岢岚县| 安乡县| 巴楚县| 黄浦区| 枣庄市| 淮阳县| 那坡县|