Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
DC-TOM
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
刘照晖
DC-TOM
Commits
ac7fcb14
Commit
ac7fcb14
authored
May 22, 2025
by
liuyangyang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
布袋周期页面开发
parent
efaeb902
Changes
5
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
680 additions
and
50 deletions
+680
-50
package.json
package.json
+1
-0
index.js
src/router/index.js
+6
-0
chart.js
src/utils/chart.js
+105
-50
collectorList.vue
src/views/collectorList/collectorList.vue
+498
-0
chart-line.vue
src/views/collectorList/components/chart-line.vue
+70
-0
No files found.
package.json
View file @
ac7fcb14
...
...
@@ -9,6 +9,7 @@
"preview"
:
"vite preview"
},
"dependencies"
:
{
"
@element-plus/icons-vue
"
:
"
^2.3.1
"
,
"
axios
"
:
"
^1.9.0
"
,
"
crypto-js
"
:
"
^4.2.0
"
,
"
echarts
"
:
"
^5.6.0
"
,
...
...
src/router/index.js
View file @
ac7fcb14
...
...
@@ -4,6 +4,7 @@ import Dashboard from '../views/dashboard/index.vue'
import
DustOverview
from
'../views/dustOverview/index.vue'
import
HomeView
from
'../views/HomeView.vue'
import
AboutView
from
'../views/AboutView.vue'
import
CollectorList
from
'../views/collectorList/collectorList.vue'
import
User
from
'../views/user.vue'
import
Layout
from
'../layout/index.vue'
import
Login
from
'../views/login/index.vue'
...
...
@@ -33,6 +34,11 @@ const routes = [
path
:
'/monitor'
,
component
:
AboutView
,
meta
:
{
title
:
'除尘器监控'
},
},
{
path
:
'/collectorList'
,
component
:
CollectorList
,
meta
:
{
title
:
'布袋周期'
},
},
{
path
:
'/alerts'
,
...
...
src/utils/chart.js
View file @
ac7fcb14
...
...
@@ -2,59 +2,114 @@ import { color } from "echarts";
export
const
getLineOption
=
(
xData
=
[],
seriesData
=
[])
=>
({
tooltip
:
{
trigger
:
'axis'
,
trigger
:
"axis"
,
},
grid
:
{
left
:
'3%'
,
right
:
'4%'
,
bottom
:
'15%'
,
top
:
'5%'
,
left
:
"3%"
,
right
:
"4%"
,
bottom
:
"15%"
,
top
:
"5%"
,
containLabel
:
true
,
},
legend
:
{
data
:
[
'健康度指数(%)'
],
bottom
:
'0%'
,
icon
:
"circle"
,
data
:
[
"健康度指数(%)"
],
bottom
:
"0%"
,
icon
:
"circle"
,
itemWidth
:
10
,
itemHeight
:
10
,
itemGap
:
10
,
},
xAxis
:
{
type
:
'category'
,
type
:
"category"
,
axisTick
:
{
show
:
false
,
},
axisLine
:
{
lineStyle
:
{
color
:
'#E9ECF2'
,
color
:
"#E9ECF2"
,
},
},
axisLabel
:
{
color
:
'rgba(0,0,0,0.6)'
,
color
:
"rgba(0,0,0,0.6)"
,
},
data
:
xData
,
},
yAxis
:
{
type
:
'value'
,
type
:
"value"
,
axisLabel
:
{
color
:
'rgba(0,0,0,0.6)'
,
color
:
"rgba(0,0,0,0.6)"
,
},
splitLine
:
{
lineStyle
:
{
color
:
'#E9ECF2'
,
type
:
'dashed'
,
color
:
"#E9ECF2"
,
type
:
"dashed"
,
},
},
},
series
:
[
{
name
:
"健康度指数(%)"
,
type
:
"line"
,
color
:
"#399DFA"
,
data
:
seriesData
,
smooth
:
true
,
},
],
});
export
const
getDustLineOption
=
(
xData
=
[],
seriesData
=
[])
=>
({
tooltip
:
{
trigger
:
"axis"
,
},
grid
:
{
left
:
"3%"
,
right
:
"4%"
,
bottom
:
"15%"
,
top
:
"5%"
,
containLabel
:
true
,
},
legend
:
{
data
:
[
"健康度指数(%)"
],
bottom
:
"0%"
,
icon
:
"circle"
,
itemWidth
:
10
,
itemHeight
:
10
,
itemGap
:
10
,
},
xAxis
:
{
type
:
"category"
,
axisTick
:
{
show
:
false
,
},
axisLine
:
{
lineStyle
:
{
color
:
"#E9ECF2"
,
},
},
axisLabel
:
{
color
:
"rgba(0,0,0,0.6)"
,
},
data
:
xData
,
},
yAxis
:
{
type
:
"value"
,
axisLabel
:
{
color
:
"rgba(0,0,0,0.6)"
,
},
splitLine
:
{
lineStyle
:
{
color
:
"#E9ECF2"
,
type
:
"dashed"
,
},
},
},
series
:
[
{
name
:
'健康度指数(%)'
,
type
:
'line'
,
color
:
'#399DFA'
,
name
:
""
,
type
:
"line"
,
color
:
"#399DFA"
,
data
:
seriesData
,
smooth
:
true
,
},
],
});
\ No newline at end of file
});
src/views/collectorList/collectorList.vue
0 → 100644
View file @
ac7fcb14
This diff is collapsed.
Click to expand it.
src/views/collectorList/components/chart-line.vue
0 → 100644
View file @
ac7fcb14
<
template
>
<div
ref=
"chartDustRef"
class=
"chart-line"
></div>
</
template
>
<
script
setup
>
import
{
onMounted
,
onBeforeUnmount
,
ref
,
watch
,
nextTick
}
from
"vue"
;
import
*
as
echarts
from
"echarts"
;
import
{
getDustLineOption
}
from
"@/utils/chart"
;
const
props
=
defineProps
({
// 表格数据
dustLineInfo
:
{
type
:
Array
,
required
:
true
,
default
:
()
=>
[],
},
});
const
chartDustRef
=
ref
(
null
);
let
chartInstance
=
null
;
const
initChart
=
()
=>
{
if
(
chartDustRef
.
value
)
{
let
xData
=
[];
let
seriesData
=
[];
if
(
props
.
dustLineInfo
)
{
props
.
dustLineInfo
.
forEach
((
i
)
=>
{
xData
.
push
(
i
.
time
);
seriesData
.
push
(
i
.
value
);
});
}
chartInstance
=
echarts
.
init
(
chartDustRef
.
value
);
const
option
=
getDustLineOption
(
xData
,
seriesData
);
nextTick
(()
=>
{
// DOM 更新完成后执行
chartInstance
.
setOption
(
option
);
});
}
};
watch
(
()
=>
props
.
dustLineInfo
,
()
=>
{
initChart
();
console
.
log
(
"props.dustLineInfo"
,
props
.
dustLineInfo
);
},
{
deep
:
true
}
);
onMounted
(()
=>
{
initChart
();
window
.
addEventListener
(
"resize"
,
()
=>
{
chartInstance
?.
resize
();
});
});
onBeforeUnmount
(()
=>
{
chartInstance
?.
dispose
();
});
</
script
>
<
style
lang=
"scss"
scoped
>
.chart-line
{
canvas
{
width
:
100%
;
height
:
100%
;
}
}
</
style
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment