From 00ef473d3b7508fd898549fc9f4c74eef52a7d71 Mon Sep 17 00:00:00 2001
From: ZhangXianQiang <1135831638@qq.com>
Date: 星期三, 20 三月 2024 09:54:26 +0800
Subject: [PATCH] feat:详情跳转
---
src/views/screen/components/screen-video/index.vue | 26 ++++----
vue.config.js | 2
src/main.js | 38 ++++++++++++
src/utils/format.js | 3 +
src/views/screen/components/screen-title/index.vue | 2
src/views/screen/components/screen-wrapper/index.vue | 7 ++
src/views/screen/components/screen-car/index.vue | 21 ++++--
src/views/screen/components/screen-detection/index.vue | 2
src/views/screen/components/screen-examine/index.vue | 2
src/views/screen/components/screen-face/index.vue | 22 ++++--
10 files changed, 93 insertions(+), 32 deletions(-)
diff --git a/src/main.js b/src/main.js
index 9ede569..7944e09 100644
--- a/src/main.js
+++ b/src/main.js
@@ -42,6 +42,9 @@
import VScaleScreen from 'v-scale-screen'
import dataV from '@jiaminghi/data-view'
+import gsap from 'gsap';
+import { formatNumber } from './utils/format';
+
// 鍏ㄥ眬鏂规硶鎸傝浇
@@ -87,6 +90,41 @@
Vue.config.productionTip = true
+
+// 鍏ㄥ眬鎸囦护
+Vue.directive('roll', {
+ inserted: (el, binding) => {
+ let target = {
+ count: 0
+ };
+ let finalNumber = el.innerText;
+ gsap.to(target, {
+ count: finalNumber,
+ duration: 1,
+ ease: "power2.out",
+ onUpdate: () => {
+ el.innerText = formatNumber(target.count.toFixed(0));
+ }
+ })
+
+ },
+ update: (el, binding) => {
+ let target = {
+ count: el.innerText
+ };
+ let finalNumber = el.getAttribute('value');
+ gsap.to(target, {
+ count: finalNumber,
+ duration: 1,
+ ease: "power2.out",
+ onUpdate: () => {
+ el.innerText = formatNumber(target.count.toFixed(0));
+ }
+ })
+ }
+})
+
+
new Vue({
el: '#app',
router,
diff --git a/src/utils/format.js b/src/utils/format.js
new file mode 100644
index 0000000..1d6c37a
--- /dev/null
+++ b/src/utils/format.js
@@ -0,0 +1,3 @@
+export const formatNumber = (value) => {
+ return new Intl.NumberFormat('en-US').format(value);
+}
\ No newline at end of file
diff --git a/src/views/screen/components/screen-car/index.vue b/src/views/screen/components/screen-car/index.vue
index a8a6446..2ae312c 100644
--- a/src/views/screen/components/screen-car/index.vue
+++ b/src/views/screen/components/screen-car/index.vue
@@ -1,6 +1,6 @@
<template>
<div class="car-container">
- <wrapper-title :title="'杞﹁締璁惧鏁版嵁'"></wrapper-title>
+ <wrapper-title :title="'杞﹁締璁惧鏁版嵁'" :path="'/monitorServe/car'"></wrapper-title>
<div class="car-content">
<div class="data-plane">
@@ -11,7 +11,7 @@
</div>
<div class="data-info">
<div class="data-lable">璁惧鎬绘暟</div>
- <div class="data-num">{{ formatNumber(1123) }}</div>
+ <div class="data-num type1" v-roll>{{ 1123 }}</div>
</div>
</div>
</dv-border-box-13>
@@ -23,7 +23,7 @@
</div>
<div class="data-info">
<div class="data-lable">璁惧姝e父鏁�</div>
- <div class="data-num">{{ formatNumber(200000) }}</div>
+ <div class="data-num type2" v-roll>{{ 2000 }}</div>
</div>
</div>
</dv-border-box-13>
@@ -35,7 +35,7 @@
</div>
<div class="data-info">
<div class="data-lable">璁惧寮傚父鏁�</div>
- <div class="data-num">{{ formatNumber(112313141111) }}</div>
+ <div class="data-num type3" v-roll>{{ 1000 }}</div>
</div>
</div>
</dv-border-box-13>
@@ -63,9 +63,6 @@
},
methods: {
- formatNumber(value) {
- return new Intl.NumberFormat('en-US').format(value);
- }
},
mounted() {
@@ -114,6 +111,16 @@
font-size: 24px;
color: #fff;
}
+
+ .type1 {
+ color: #287cfa;
+ }
+ .type2 {
+ color: #0cd81d;
+ }
+ .type3 {
+ color: #e20c0c
+ }
}
}
}
diff --git a/src/views/screen/components/screen-detection/index.vue b/src/views/screen/components/screen-detection/index.vue
index 714f076..1eccea9 100644
--- a/src/views/screen/components/screen-detection/index.vue
+++ b/src/views/screen/components/screen-detection/index.vue
@@ -1,6 +1,6 @@
<template>
<div class="detection-container">
- <wrapper-title :title="'杩愯鐩戞帶鏁版嵁'"></wrapper-title>
+ <wrapper-title :title="'杩愯鐩戞帶鏁版嵁'" :path="'/dataManage'"></wrapper-title>
<div class="detection-content">
<div class="water-item">
diff --git a/src/views/screen/components/screen-examine/index.vue b/src/views/screen/components/screen-examine/index.vue
index 5447573..f48d208 100644
--- a/src/views/screen/components/screen-examine/index.vue
+++ b/src/views/screen/components/screen-examine/index.vue
@@ -1,6 +1,6 @@
<template>
<div class="examine-container">
- <wrapper-title :title="'鑰冩牳鏁版嵁'"></wrapper-title>
+ <wrapper-title :title="'鑰冩牳鏁版嵁'" :path="'/examine/check-rule'"></wrapper-title>
<div class="examine-content">
<div class="examine-wrapper">
<examine-chart class="wrapper-item"></examine-chart>
diff --git a/src/views/screen/components/screen-face/index.vue b/src/views/screen/components/screen-face/index.vue
index cf1a29a..488816b 100644
--- a/src/views/screen/components/screen-face/index.vue
+++ b/src/views/screen/components/screen-face/index.vue
@@ -1,6 +1,6 @@
<template>
<div class="face-container">
- <wrapper-title :title="'浜鸿劯璁惧鏁版嵁'"></wrapper-title>
+ <wrapper-title :title="'浜鸿劯璁惧鏁版嵁'" :path="'/monitorServe/face'"></wrapper-title>
<div class="face-content">
<div class="data-plane">
@@ -11,7 +11,7 @@
</div>
<div class="data-info">
<div class="data-lable">璁惧鎬绘暟</div>
- <div class="data-num">{{ formatNumber(1123) }}</div>
+ <div class="data-num type1" v-roll>{{ 1123 }}</div>
</div>
</div>
</dv-border-box-13>
@@ -23,7 +23,7 @@
</div>
<div class="data-info">
<div class="data-lable">璁惧姝e父鏁�</div>
- <div class="data-num">{{ formatNumber(200000) }}</div>
+ <div class="data-num type2" v-roll>{{ 2000 }}</div>
</div>
</div>
</dv-border-box-13>
@@ -35,7 +35,7 @@
</div>
<div class="data-info">
<div class="data-lable">璁惧寮傚父鏁�</div>
- <div class="data-num">{{ formatNumber(112313141111) }}</div>
+ <div class="data-num type3" v-roll>{{ 1000 }}</div>
</div>
</div>
</dv-border-box-13>
@@ -62,10 +62,6 @@
},
methods: {
-
- formatNumber(value) {
- return new Intl.NumberFormat('en-US').format(value);
- }
},
mounted() {
@@ -113,6 +109,16 @@
font-size: 24px;
color: #fff;
}
+
+ .type1 {
+ color: #287cfa;
+ }
+ .type2 {
+ color: #0cd81d;
+ }
+ .type3 {
+ color: #e20c0c
+ }
}
}
}
diff --git a/src/views/screen/components/screen-title/index.vue b/src/views/screen/components/screen-title/index.vue
index 181f81d..7dd1f76 100644
--- a/src/views/screen/components/screen-title/index.vue
+++ b/src/views/screen/components/screen-title/index.vue
@@ -5,7 +5,7 @@
<img src="@/assets/images/screen/header_bg.png" class="width-img" alt="">
</div>
<div class="header-text">
- 鑷础甯傝繍缁磋�冩牳鍙鍖栧ぇ灞�
+ 鑷础甯傝繍缁磋�冩牳鍙鍖�
</div>
</div>
</div>
diff --git a/src/views/screen/components/screen-video/index.vue b/src/views/screen/components/screen-video/index.vue
index 3fa66d1..d97042f 100644
--- a/src/views/screen/components/screen-video/index.vue
+++ b/src/views/screen/components/screen-video/index.vue
@@ -1,6 +1,6 @@
<template>
<div class="video-container">
- <wrapper-title :title="'瑙嗛璁惧鏁版嵁'"></wrapper-title>
+ <wrapper-title :title="'瑙嗛璁惧鏁版嵁'" :path="'/monitorServe/video'"></wrapper-title>
<div class="video-content">
<div class="data-plane">
@@ -11,7 +11,7 @@
</div>
<div class="data-info">
<div class="data-lable">璁惧鎬绘暟</div>
- <div class="data-num">{{ formatNumber(1123) }}</div>
+ <div class="data-num type1" v-roll>{{ 1123 }}</div>
</div>
</div>
</dv-border-box-13>
@@ -23,7 +23,7 @@
</div>
<div class="data-info">
<div class="data-lable">璁惧姝e父鏁�</div>
- <div class="data-num">{{ formatNumber(200000) }}</div>
+ <div class="data-num type2" v-roll>{{ 2000 }}</div>
</div>
</div>
</dv-border-box-13>
@@ -35,7 +35,7 @@
</div>
<div class="data-info">
<div class="data-lable">璁惧寮傚父鏁�</div>
- <div class="data-num">{{ formatNumber(112313141111) }}</div>
+ <div class="data-num type3" v-roll>{{ 1000 }}</div>
</div>
</div>
</dv-border-box-13>
@@ -54,18 +54,10 @@
},
data() {
return {
- dataList: {
- state: { '01:00': 1000, '02:00': 2131, '03:00': 1233, '04:00': 2132, '05:00': 3211, '06:00': 213, '07:00': 123, '08:00': 566 },
- state2: { '01:00': 900, '02:00': 1131, '03:00': 1533, '04:00': 2132, '05:00': 3011, '06:00': 13, '07:00': 113, '08:00': 566 },
- },
}
},
methods: {
-
- formatNumber(value) {
- return new Intl.NumberFormat('en-US').format(value);
- }
},
mounted() {
@@ -113,6 +105,16 @@
font-size: 24px;
color: #fff;
}
+
+ .type1 {
+ color: #287cfa;
+ }
+ .type2 {
+ color: #0cd81d;
+ }
+ .type3 {
+ color: #e20c0c
+ }
}
}
}
diff --git a/src/views/screen/components/screen-wrapper/index.vue b/src/views/screen/components/screen-wrapper/index.vue
index a647da0..6cbb50e 100644
--- a/src/views/screen/components/screen-wrapper/index.vue
+++ b/src/views/screen/components/screen-wrapper/index.vue
@@ -2,7 +2,7 @@
<div class="wrapper-container">
<select-item></select-item>
<div class="return-button">
- <el-button type="primary">杩斿洖</el-button>
+ <el-button type="primary" @click="returnPath">杩斿洖</el-button>
</div>
<div class="wrapper-content">
<div class="left-container wrapper">
@@ -41,6 +41,11 @@
ScreenCar,
ScreenMap
},
+ methods: {
+ returnPath() {
+ this.$router.go(-1);
+ }
+ }
}
</script>
diff --git a/vue.config.js b/vue.config.js
index e61f74f..cf11cc5 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -35,7 +35,7 @@
proxy: {
// detail: https://cli.vuejs.org/config/#devserver-proxy
[process.env.VUE_APP_BASE_API]: {
- target: `http://localhost:8080`,
+ target: `http://192.168.3.88:8080`,
changeOrigin: true,
pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: ''
--
Gitblit v1.8.0