<template> <ve-ring :data="chartData" :title="title" :settings="chartSettings" :legend="legends" /> </template> <script> import { getDayTime } from '@/utils/dateutils' import { peopleCountByDevice } from '@/api/statistics' export default { name: 'PassCount', data() { this.title = { text: '通行人数' } this.legends = { orient: 'horizontal', x: 'right', // 可设定图例在左、右、居中 padding: [0, 0, 0, 100] } this.chartSettings = { label: { normal: { show: true } } } return { chartData: { columns: ['deviceName', 'count'], rows: [] } } }, mounted() { this.fetchData() }, activated() { this.fetchData() }, methods: { fetchData() { const startTime = getDayTime(new Date().getTime()).Format('yyyy-MM-dd') + ' 00:00:00' const endTime = getDayTime(new Date().getTime()).Format('yyyy-MM-dd') + ' 23:59:59' // const startTime = '2020-06-01 00:00:00' // const endTime = '2020-06-20 00:00:00' const listQuery = { startTime: startTime, endTime: endTime } peopleCountByDevice(listQuery).then(response => { const data = response.data if (data.length === 0) { var data0 = {} data0['deviceName'] = '' data0['count'] = 0 data.push(data0) this.chartSettings.label.normal.show = false } this.chartData.rows = data }) } } } </script>