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 相关文章推荐
jQuery 3.0 的变化及使用方法
Feb 01 Javascript
Backbone.js框架中简单的View视图编写学习笔记
Feb 14 Javascript
jQuery EasyUI之验证框validatebox实例详解
Apr 10 jQuery
简单谈谈关于 npm 5.0 的新坑
Jun 08 Javascript
JavaScript Date对象应用实例分享
Oct 30 Javascript
JS严格模式知识点总结
Feb 27 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
Jul 30 Javascript
详解Axios统一错误处理与后置
Sep 26 Javascript
jquery实现自定义树形表格的方法【自定义树形结构table】
Jul 12 jQuery
使用Layui搭建后台管理界面的操作方法
Sep 20 Javascript
vscode 插件开发 + vue的操作方法
Jun 05 Javascript
vue实现导航菜单和编辑文本的示例代码
Jul 04 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随机输出名人名言的代码
2012/10/07 PHP
php+js实现异步图片上传实例分享
2014/06/02 PHP
PHP中soap的用法实例
2014/10/24 PHP
ThinkPHP表单数据智能写入create方法实例分析
2015/09/27 PHP
PHP CURL或file_get_contents获取网页标题的代码及两者效率的稳定性问题
2015/11/30 PHP
php遍历替换目录下文件指定内容的方法
2016/11/10 PHP
Aster vs KG BO3 第三场2.19
2021/03/10 DOTA
用javascript实现的支持lrc歌词的播放器
2007/05/17 Javascript
js 颜色选择器(兼容firefox)
2009/03/05 Javascript
一组JS创建和操作表格的函数集合
2009/05/07 Javascript
Jquery数独游戏解析(一)-页面布局
2010/11/05 Javascript
Javascript学习笔记 delete运算符
2011/09/13 Javascript
JQuery入门——用one()方法绑定事件处理函数(仅触发一次)
2013/02/05 Javascript
jquery实现excel导出的方法
2013/04/04 Javascript
jquery ajax中使用jsonp的限制解决方法
2013/11/22 Javascript
jQuery及JS实现循环中暂停的方法
2015/02/02 Javascript
jQuery插件StickUp实现网页导航置顶
2015/04/12 Javascript
javascript十六进制数字和ASCII字符之间的转换方法
2016/12/27 Javascript
Vue实例简单方法介绍
2017/01/20 Javascript
Javascript创建类和对象详解
2017/05/31 Javascript
Angular4项目中添加i18n国际化插件ngx-translate的步骤详解
2017/07/02 Javascript
详解Vue学习笔记进阶篇之列表过渡及其他
2017/07/17 Javascript
Vue 中 filter 与 computed 的区别与用法解析
2019/11/21 Javascript
Python警察与小偷的实现之一客户端与服务端通信实例
2014/10/09 Python
Windows下将Python文件打包成.EXE可执行文件的方法
2018/08/03 Python
python发送多人邮件没有展示收件人问题的解决方法
2019/06/21 Python
Python 3 判断2个字典相同
2019/08/06 Python
详解Python Opencv和PIL读取图像文件的差别
2019/12/27 Python
详解Java中一维、二维数组在内存中的结构
2021/02/11 Python
美国婴儿和儿童家具网上商店:ABaby.com
2018/07/02 全球购物
先进学校事迹材料
2014/12/30 职场文书
先进个人主要事迹怎么写
2015/11/04 职场文书
tensorboard 可视化之localhost:6006不显示的解决方案
2021/05/22 Python
Python开发五子棋小游戏
2022/05/02 Python
使用Redis实现分布式锁的方法
2022/06/16 Redis
一文教你快速生成MySQL数据库关系图
2022/06/28 Redis