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柱状
1
2
3
4
5
6
|
this .chartEvent.on( 'click' , function (param) { that.$router.push({ path: '/cases/case' , query: { createdTime: param.name,type: "createdTime" } }); }) |
2.表格分页写法(不同跳转 显示不同传参)
注:由于该页面下拉框也有相应的优先级筛选条件 所有写了两层if判断了一下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
|
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(点击该组件跳转到详情页)
1
2
3
4
5
6
7
8
9
|
< 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 > |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<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> |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<style lang= "scss" scoped> .goods-info { padding-bottom : 0.2 rem; .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)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
<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不同内容 跳转到同一表格的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/canshegui2293/article/details/104406367