vue点击Dashboard不同内容 跳转到同一表格的实例


Posted in Javascript onNovember 13, 2020

1.点击跳转写法

点击页面内容:优先级

<router-link :to='{ path: "/cases/case",query: { priorityId: 0 ,type:"priorityId"}}' style="color: #515a6e;">优先级</router-link>

点击页面内容:状态

<router-link :to='{ path: "/cases/case",query: { status: 0 ,type:"status"}}' style="color: #515a6e;">状态</router-link>

点击echarts柱状

this.chartEvent.on('click',function (param) {
   that.$router.push({
     path: '/cases/case',
     query: { createdTime: param.name,type:"createdTime" }
   });
 })

2.表格分页写法(不同跳转 显示不同传参)

注:由于该页面下拉框也有相应的优先级筛选条件 所有写了两层if判断了一下

getData: function(){
  //获取CaseSearch里面的搜索内容
  eventBus.$on('ticketEntityId',function(val){
    tableCaseVue.ticketEntityId=val;
  })
  eventBus.$on('companyId',function(val){
    tableCaseVue.companyId=val;
  })
  eventBus.$on('priorityId',function(val){
    tableCaseVue.priorityId=val;
  })
  eventBus.$on('status',function(val){
    tableCaseVue.status=val;
  })
  eventBus.$on('ticketCategory',function(val){
    tableCaseVue.ticketCategory=val;
  })

  var pageTicketDate = {
    "pageNum": this.current,
    "pageSize": this.pageSize,
    "priorityId":tableCaseVue.priorityId,
    "status":tableCaseVue.status,
    "ticketEntityId":tableCaseVue.ticketEntityId,
    "companyId":tableCaseVue.companyId,
    "ticketCategory":tableCaseVue.ticketCategory
  };
  // 优先级
  if((this.$route.query.type == 'priorityId')&&(pageTicketDate.priorityId=='')){
    pageTicketDate.priorityId=this.$route.query.priorityId;
  }

  // 状态
  if((this.$route.query.type == 'status')&&(pageTicketDate.status=='')){
    pageTicketDate.status=this.$route.query.status;
  }

  //创建时间
  if (this.$route.query.type == 'createdTime') {
    pageTicketDate.createdTime = this.$route.query.createdTime;
  }

  //当前月
  if (this.$route.query.type == 'currentMonth') {
    pageTicketDate.currentMonth = this.$route.query.currentMonth;
  }

  if(pageTicketDate.ticketEntityId||pageTicketDate.companyId||pageTicketDate.priorityId||pageTicketDate.status||pageTicketDate.ticketCategory){
    pageTicketDate.ticketEntityId=tableCaseVue.ticketEntityId;
    pageTicketDate.companyId=tableCaseVue.companyId;
    pageTicketDate.priorityId=tableCaseVue.priorityId;
    pageTicketDate.status=tableCaseVue.status;
    pageTicketDate.ticketCategory=tableCaseVue.ticketCategory;
    pageTicketDate.createdTime='';
    pageTicketDate.currentMonth='';
  }

  this.$api.ticket.pageTicket(pageTicketDate)
  .then(res => {
    this.tableCaseDate = res.data.records;
    for(var i=0;i<this.tableCaseDate.length;i++){
      // 响应时间
      if(this.tableCaseDate[i].waitTime!=undefined){
        this.tableCaseDate[i].waitTime=this.tableCaseDate[i].waitTime+'分钟';
      }
      // 处理时间
      if(this.tableCaseDate[i].handleTime!=undefined){
        this.tableCaseDate[i].handleTime=this.tableCaseDate[i].handleTime+'分钟';
      }
      // 完成时间
      if(this.tableCaseDate[i].finishTime!=undefined){
        this.tableCaseDate[i].finishTime=this.tableCaseDate[i].finishTime;
      }else{
        this.tableCaseDate[i].finishTime='N/A';
      }
    }
    // 当前页
    this.current = res.data.current;
    // 总条数
    this.dataTotal = res.data.total;
  });
}

补充知识:vue点击跳转到详情页

1商品组件页面GoodsInfo.vue(点击该组件跳转到详情页)

<template>
<div class="goods-info" @click="goGoodsPage()">
<div class="goods-image">
<img v-lazy="goodsImage">
</div>
<div class="goods-name">{{goodsName}}</div>
<div class="goods-price">¥{{ goodsPrice.toFixed(2) }}</div>
</div>
</template>
<script>
export default {
name: "goodsInfo",
// 首页传过来的
props: ["goodsImage", "goodsName", "goodsPrice", "goodsId"],
data() {
return {};
},
methods: {
goGoodsPage() {
// 跳转到Goods.vue商品详情页面,name为Goods.vue页面路由配置里的的name属性
this.$router.push({name:"goods",query:{goodsId:this.goodsId}})
}
}
};
</script>
<style lang="scss" scoped>
.goods-info {
padding-bottom: 0.2rem;
.goods-image {
text-align: center;
img{
width: 95%;vertical-align: middle;
}
}
.goods-name {
padding: 0 8px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.goods-price {
text-align: center;
color: #e5017d;
}
}
</style>

2商品详情页面Goods.vue(接收商品组件页面GoodsInfo.vue传过来的goodsId)

<template>
 <div>商品详情页</div>
</template>

<script>
import url from "@/urlApi.js";
export default {
 name: "goods",
 data() {
  return {
   goodsId: ""
  };
 },
 created () {
   // 接收GoodsInfo.vue传过来的goodsId
   this.goodsId = this.$route.query.goodsId
   console.log(this.goodsId)
   this.getGoodsInfo();
 },
 methods: {
  getGoodsInfo() {
   let that = this;
   this.$http
    .post(url.getDetailGoodsInfo,{goodsId: that.goodsId})
    .then(response => {
      //根据goodsId获取对应的商品详情信息
      console.log(response)
    })
    .catch(error => {

    });
  }
 }
};
</script>

<style lang="scss" scoped>
</style

以上这篇vue点击Dashboard不同内容 跳转到同一表格的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js变量以及其作用域详解
Jul 18 Javascript
javascript学习笔记(十九) 节点的操作实现代码
Jun 20 Javascript
window.print打印指定div实例代码
Dec 13 Javascript
JavaScript中实现继承的三种方式和实例
Jan 29 Javascript
详解Angularjs filter过滤器
Feb 06 Javascript
Vue.js每天必学之过滤器与自定义过滤器
Sep 07 Javascript
jQuery的$.extend 浅拷贝与深拷贝
Mar 08 Javascript
微信小程序 连续旋转动画(this.animation.rotate)详解
Apr 07 Javascript
seajs中模块依赖的加载处理实例分析
Oct 10 Javascript
基于JS实现一个随机生成验证码功能
May 29 Javascript
Vue中强制组件重新渲染的正确方法
Jan 03 Vue.js
关于React Native使用axios进行网络请求的方法
Aug 02 Javascript
解决iView Table组件宽度只变大不变小的问题
Nov 13 #Javascript
PHP 502bad gateway原因及解决方案
Nov 13 #Javascript
解决iview table组件里的 固定列 表格不自适应的问题
Nov 13 #Javascript
Flexible.js可伸缩布局实现方法详解
Nov 13 #Javascript
vue切换菜单取消未完成接口请求的案例
Nov 13 #Javascript
在vue中嵌入外部网站的实现
Nov 13 #Javascript
如何基于viewport vm适配移动端页面
Nov 13 #Javascript
You might like
PHP脚本的10个技巧(6)
2006/10/09 PHP
php的curl实现get和post的代码
2008/08/23 PHP
使用php将某个目录下面的所有文件罗列出来的方法详解
2013/06/21 PHP
PHP实用函数分享之去除多余的0
2015/02/06 PHP
php curl 模拟登录并获取数据实例详解
2016/12/22 PHP
JavaScript 学习笔记(九)call和apply方法
2010/01/11 Javascript
JS在textarea光标处插入文本的小例子
2013/03/22 Javascript
调用jQuery滑出效果时闪烁的解决方法
2014/03/27 Javascript
javascript实时显示北京时间的方法
2015/03/12 Javascript
JavaScript中的函数声明和函数表达式区别浅析
2015/03/27 Javascript
js实现类似菜单风格的TAB选项卡效果代码
2015/08/28 Javascript
jQuery复制表单元素附源码分享效果演示
2015/09/30 Javascript
js脚本编写简单刷票投票系统
2017/06/27 Javascript
vue实例中data使用return包裹的方法
2018/08/27 Javascript
Vue 重置组件到初始状态的方法示例
2018/10/10 Javascript
JavaScript代码实现微博批量取消关注功能
2021/02/05 Javascript
[05:01]3.19DOTA2发布会 我们都是刀塔人
2014/03/25 DOTA
Python下使用Psyco模块优化运行速度
2015/04/05 Python
Python多进程机制实例详解
2015/07/02 Python
Python实现购物车功能的方法分析
2017/11/10 Python
Python OpenCV处理图像之图像像素点操作
2018/07/10 Python
Python字符串匹配之6种方法的使用详解
2019/04/08 Python
Python StringIO如何在内存中读写str
2020/01/07 Python
Python3 字典dictionary入门基础附实例
2020/02/10 Python
Jupyter notebook如何实现指定浏览器打开
2020/05/13 Python
PyCharm设置注释字体颜色以及是否倾斜的操作
2020/09/16 Python
python实现发送邮件
2021/03/02 Python
详解css3使用transform出现字体模糊的解决办法
2020/10/16 HTML / CSS
canvas 绘图时位置偏离的问题解决
2020/09/16 HTML / CSS
丝芙兰意大利官方网站:Sephora.it
2019/12/13 全球购物
一套C++笔试题面试题
2012/06/06 面试题
师范毕业生自我鉴定
2014/01/15 职场文书
公益广告宣传方案
2014/02/28 职场文书
困难补助申请报告
2015/05/19 职场文书
初中生物教学随笔
2015/08/15 职场文书
MySQL注入基础练习
2021/05/30 MySQL