vue仿淘宝订单状态的tab切换效果


Posted in Javascript onJune 23, 2020

前几天刚开始使用vue 做项目,然后自己就在项目中摸索写了一个tab切换的小dome,仿淘宝订单状态的tab切换。

HTML 代码:

<div class="navigation">
 //这里是通过循环遍历出来的数据,你需要根据index的值来判断你现在点击的是第几个tab栏导航,同时在js中写一个navChange的方法来把index 传递到就js中来改变tabIndex(这是在初始化时设置的默认index)的值
 <span v-for="(item, index) in navItems" v-touch:tap=" { event: navChange, params: [index] }">
  <em> {{item.text}} </em>  
 </span>
</div>
 //上面的v-touch:tap 是我们自己封装的点击事件指令,跟v-click用法差不多

<div class="content">
 <div class="main">
 //div item中是需要切换的订单数据,for循环遍历的是各种订单状态的集合orderAllItem,然后通过选择的tab值对应的index来判断调用orderAllItem中的第几个数组进行循环遍历
 <div class="item" v-for="item in orderAllItem[tabIndex]">
  <div class="title">
   <span class="id">订单号:{{item.orderId}}</span>
   <span class="status" >{{item.statusName}}</span>
  </div>
  <div class="toys" v-touch:tap="{ event: goToDetail, params: [item.orderId]}">
   <div class="toy" v-for="toy in item.toys">
   <img class="toyImg" :src="toy.image"/>
   <div class="area">
    <em class="name">{{toy.toyName}}</em>
    <span class="age">适合年龄:{{toy.ageRange}}</span
   </div>
   </div>
  </div>
  </div>
 </div>
</div>

JS代码

var _default = (function(){
 var navs = [
 {
  'text': '全部订单', 
 },
 {
  'text': '待付款',
 },
 {
  'text': '待收货',
 },  
 {
  'text': '待归还',
 },
 {
  'text': '已完成',
 }
 ];
 var orders= [
 //因为没有合适的数据来源,所以假装这里就是从后端请求的所有的订单集合,在下边data中你需要吧你分类的订单根据状态进行分类。
 ];
 return {
 name: 'index',
 mounted: function(){

 },
 destoryed: function(){

 },
 data: function(){
  //待付款
  var paymentsItem = [];
  //待收货
  var receiptsItem = [];
  //待归还
  var returnsItem = [];
  //已完成
  var completesItem = [];

  //把所有不同状态的订单通过if判断push到相对应的订单状态集合中。
  orders.forEach(function(order){
  if(order.status == 0){
   paymentsItem.push(order);
  };
  if(order.status == 3){
   receiptsItem.push(order);
  };
  if(order.status == 5){
   returnsItem.push(order);
  };
  if(order.status == 13){
   completesItem.push(order);
  }
  });
  //设置一个空数组,把所有状态下的订单集合放到空数组中,从0-5的顺序按照你的自己设置的tab切换的内容0-5的顺序对应排列,
  var orderAll = [ orders, paymentsItem, receiptsItem, returnsItem, completesItem];
  console.log(orderAll);
  return {
  navItems : navs,
  //全部订单分类的集合
  orderAllItem : orderAll,
  //设置
  tabIndex : 0,
  };
 },
 methods: {
  navChange: function (e, index){

  this.tabIndex = index;
//  console.log(this.tabIndex)
  }
 }
 }
})();

export default _default;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一些有关检查数据的JS代码
Sep 07 Javascript
js计算精度问题小结
Apr 22 Javascript
JS继承用法实例分析
Feb 05 Javascript
jQuery删除一个元素后淡出效果展示删除过程的方法
Mar 18 Javascript
JS函数的几种定义方式分析
Dec 17 Javascript
浅谈angularjs module返回对象的坑(推荐)
Oct 21 Javascript
纯js实现悬浮按钮组件
Dec 17 Javascript
jquery实现tab选项卡切换效果(悬停、下方横线动画位移)
May 05 jQuery
Angular实现的自定义模糊查询、排序及三角箭头标注功能示例
Dec 28 Javascript
vue中axios的封装问题(简易版拦截,get,post)
Jun 15 Javascript
Vue实现商品详情页的评价列表功能
Sep 04 Javascript
three.js利用卷积法如何实现物体描边效果
Nov 27 Javascript
五步轻松实现zTree的使用
Nov 01 #Javascript
BootStrap TreeView使用实例详解
Nov 01 #Javascript
AngularJs ng-change事件/指令的用法小结
Nov 01 #Javascript
详解Vue组件实现tips的总结
Nov 01 #Javascript
原生JS+CSS实现炫酷重力模拟弹跳系统的登录页面
Nov 01 #Javascript
Angular 4根据组件名称动态创建出组件的方法教程
Nov 01 #Javascript
js前端导出Excel的方法
Nov 01 #Javascript
You might like
生成静态页面的PHP类
2006/07/15 PHP
php开发工具之vs2005图解
2008/01/12 PHP
那些年一起学习的PHP(三)
2012/03/22 PHP
PHP生成plist数据的方法
2015/06/16 PHP
PHP实现的购物车类实例
2015/06/17 PHP
JavaScript的面向对象(一)
2006/11/09 Javascript
在Ajax中使用Flash实现跨域数据读取的实现方法
2010/12/02 Javascript
jquery一句话全选/取消全选
2011/03/01 Javascript
EXTJS FORM HIDDEN TEXTFIELD 赋值 使用value不好用的问题
2011/04/16 Javascript
jQuery判断iframe中元素是否存在的方法
2013/05/11 Javascript
jsPDF生成pdf后在网页展示实例
2014/01/16 Javascript
讲解JavaScript中for...in语句的使用方法
2015/06/03 Javascript
JS+CSS实现另类带提示效果的竖向导航菜单
2015/10/15 Javascript
jQuery+CSS3+Html5实现弹出层效果实例代码(附源码下载)
2016/05/16 Javascript
jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
2020/04/16 Javascript
基于Vuejs实现购物车功能
2016/08/02 Javascript
jQuery查找节点并获取节点属性的方法
2016/09/09 Javascript
js Canvas实现的日历时钟案例分享
2016/12/25 Javascript
JSONP基础知识详解
2017/03/19 Javascript
JS 学习总结之正则表达式的懒惰性和贪婪性
2017/07/03 Javascript
ReactJS实现表单的单选多选和反选的示例
2017/10/13 Javascript
浅谈JavaScript 代码简洁之道
2019/01/09 Javascript
深入浅出vue图片路径的实现
2019/09/04 Javascript
python实现封装得到virustotal扫描结果
2014/10/05 Python
Python中使用PIL库实现图片高斯模糊实例
2015/02/08 Python
Windows下安装python2.7及科学计算套装
2015/03/05 Python
python使用PyGame播放Midi和Mp3文件的方法
2015/04/24 Python
Python搜索引擎实现原理和方法
2017/11/27 Python
Python使用sax模块解析XML文件示例
2019/04/04 Python
使用Django的JsonResponse返回数据的实现
2021/01/15 Python
前端制作动画的几种方式(css3,js)
2016/12/12 HTML / CSS
英文自我鉴定
2013/12/10 职场文书
好学生评语大全
2014/05/05 职场文书
竞选大队干部演讲稿
2014/09/11 职场文书
2014学习优秀共产党员先进事迹思想汇报
2014/09/14 职场文书
2015年生活老师工作总结
2015/05/27 职场文书