Vue实现简易翻页效果源码分享


Posted in Javascript onNovember 08, 2018

源码如下:

<html>
<head>  <meta charset="UTF-8">
  <title>slidePage</title>
  <script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
  <style type="text/css">
   *{
     margin: 0;
     padding: 0;
   }
   .container {
     width: 100%;
     margin: 0 auto;
     text-align: center;
   }
   .content{
     font-size: 400px
   }
   .leftBtn{
     width: 45px;
     height: 45px;
     margin-right: 15px;
   }
   .rightBtn{
     width: 45px;
     height: 45px;
     margin-left: 15px;
   }
  </style>
</head>
<body>
<div id='root'>
  <div v-if="numberArr.length == 0">{{showMessage}}</div>
  <div class="container" v-for="(item, index) in getCurPageContent(numberArr, curPage, itemNumPerPage)" :key="index">
   <div class="content">{{item}}</div>
   <div class="pageButtonList">
     <button class="leftBtn" @click="handleClick('leftBtn')"><</button>
     <span class="pagination">{{curPage}}/{{totalPage}}</span>
     <button class="rightBtn" @click="handleClick('rightBtn')">></button>
   </div>
  </div>
</div>
<script>
  new Vue({
    el: "#root",
    data(){
      return {
        showMessage: 'No number',
        content:'',
        numberArr: [1, 2, 3, 4],
        curPage: 1,
        totalPage: 1,
        itemNumPerPage: 1
      }
    },
    mounted() {
      this.init()
    },
    methods:{
      init(){
        this.totalPage = Math.ceil(this.numberArr.length / this.itemNumPerPage)
        this.totalPage = this.totalPage < 1 ? 1 : this.totalPage
      },
      getCurPageContent: function(numberArr, curPage, itemNumPerPage){
        return numberArr.filter(function(element, index){
          if(index >= (curPage -1)* itemNumPerPage && index < curPage *itemNumPerPage){
            return true
          }else{
            return false
          }
        })
      },
      handleClick: function(arg){
        if(arg == 'leftBtn'){
          this.curPage = this.curPage > 1 ? --this.curPage : this.totalPage
        }else if (arg == 'rightBtn'){
          this.curPage = this.curPage < this.totalPage ? ++this.curPage: 1
        }
      }
      // handleLeftClick: function(){
      //   if(this.curPage > 1){
      //     this.curPage --
      //   }else{
      //     this.curPage = this.totalPage
      //   }
      // },
      // handleRightClick: function(){
      //   if(this.curPage < this.totalPage){
      //     this.curPage ++
      //   }else{
      //     this.curPage = 1
      //   }
      // }
    }
  })
</script>
</body>
</html>

效果如下所示,点击左右能切换页面:

Vue实现简易翻页效果源码分享

总结

以上所述是小编给大家介绍的Vue实现简易翻页效果源码分享,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
菜单效果
Oct 14 Javascript
JQuery从头学起第二讲
Jul 04 Javascript
js 通用javascript函数库整理
Aug 14 Javascript
在JavaScript中使用timer示例
May 08 Javascript
容易造成JavaScript内存泄露几个方面
Sep 04 Javascript
jquery引用方法时传递参数原理分析
Oct 13 Javascript
jQuery实现获取绑定自定义事件元素的方法
Dec 02 Javascript
AngularJS Bootstrap详细介绍及实例代码
Jul 28 Javascript
详解webpack分离css单独打包
Jun 21 Javascript
Vue自定义事件(详解)
Aug 19 Javascript
详解javascript replace高级用法
Feb 17 Javascript
详解vue 不同环境配置不同的打包命令
Apr 07 Javascript
vue-cli3.0 环境变量与模式配置方法
Nov 08 #Javascript
详解如何创建并发布一个 vue 组件
Nov 08 #Javascript
webpack开发环境和生产环境的深入理解
Nov 08 #Javascript
webpack 开发和生产并行设置的方法
Nov 08 #Javascript
JS动画实现回调地狱promise的实例代码详解
Nov 08 #Javascript
深入解析ES6中的promise
Nov 08 #Javascript
vue中promise的使用及异步请求数据的方法
Nov 08 #Javascript
You might like
php foreach 使用&amp;(与运算符)引用赋值要注意的问题
2010/02/16 PHP
ThinkPHP提示错误Fatal error: Allowed memory size的解决方法
2015/02/12 PHP
解决Laravel5.5下的toArray问题
2019/10/15 PHP
javascript 禁止复制网页
2009/06/11 Javascript
UserData用法总结 lanyu出品
2010/07/01 Javascript
jQuery实现回车键(Enter)切换文本框焦点的代码实例
2014/05/05 Javascript
javascript中拼接HTML字符串的最快、最好的方法
2014/06/07 Javascript
HTML5+setCutomValidity()函数验证表单实例分享
2015/04/24 Javascript
jQuery实现向下滑出的二级菜单效果实例
2015/08/22 Javascript
JavaScript学习总结之JS、AJAX应用
2016/01/29 Javascript
angularjs中使用ng-bind-html和ng-include的实例
2017/04/28 Javascript
微信小程序实现语音识别转文字功能及遇到的坑
2019/08/02 Javascript
webpack4 配置 ssr 环境遇到“document is not defined”
2019/10/24 Javascript
vue2.* element tabs tab-pane 动态加载组件操作
2020/07/19 Javascript
[27:02]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第三场
2014/05/24 DOTA
Python运行的17个时新手常见错误小结
2012/08/07 Python
python实现去除下载电影和电视剧文件名中的多余字符的方法
2014/09/23 Python
在python3.5中使用OpenCV的实例讲解
2018/04/02 Python
Python控制键盘鼠标pynput的详细用法
2019/01/28 Python
Python 堆叠柱状图绘制方法
2019/07/29 Python
python3图片文件批量重命名处理
2019/10/31 Python
Python Selenium模块安装使用教程详解
2020/07/09 Python
python re的findall和finditer的区别详解
2020/11/15 Python
python中doctest库实例用法
2020/12/31 Python
创建索引时需要注意的事项
2013/05/13 面试题
最新会计专业求职信范文
2014/01/28 职场文书
党员政治学习材料
2014/05/14 职场文书
2014年社区重阳节活动策划方案
2014/09/16 职场文书
委托证明模板
2014/09/16 职场文书
中学生社区服务活动报告
2015/02/05 职场文书
初中毕业生自我评价
2015/03/02 职场文书
幼儿园教师教育随笔
2015/08/14 职场文书
小学副班长竞选稿
2015/11/21 职场文书
《玩出了名堂》教学反思
2016/02/17 职场文书
《小摄影师》教学反思
2016/02/18 职场文书
tomcat默认最大连接数及相关调整方法
2022/05/06 Servers