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