diff --git a/src/components/charts/ChartTable.vue b/src/components/charts/ChartTable.vue index 5fe4a279..b70c983c 100644 --- a/src/components/charts/ChartTable.vue +++ b/src/components/charts/ChartTable.vue @@ -8,7 +8,7 @@ -
+
-
+
- @@ -24,7 +24,8 @@ export default { props: { layout: Array, chartInfo: Object, - loading: Boolean + loading: Boolean, + noData: Boolean }, setup (props) { return { diff --git a/src/main.js b/src/main.js index 9f5ac1e5..0ddf75fc 100644 --- a/src/main.js +++ b/src/main.js @@ -4,7 +4,7 @@ import store from '@/store' import App from '@/App.vue' import { hasPermission } from '@/permission' import commonMixin from '@/mixins/common' -import { cancelWithChange, clickOutside } from '@/utils/tools' +import { cancelWithChange, clickOutside, noData } from '@/utils/tools' import { ClickOutside } from 'element-plus/lib/directives' import i18n from '@/i18n' import '@/assets/css/main.scss' // 样式入口 @@ -36,6 +36,7 @@ app.directive('has', hasPermission) // 注册指令 app.directive('click-outside', clickOutside) app.directive('ele-click-outside', ClickOutside) app.directive('cancel', cancelWithChange) +app.directive('no-data', noData) app.config.globalProperties.$_ = _ app.mixin(commonMixin) diff --git a/src/utils/tools.js b/src/utils/tools.js index 502387ef..aed2ce20 100644 --- a/src/utils/tools.js +++ b/src/utils/tools.js @@ -346,7 +346,15 @@ export const clickOutside = { delete el.__vueClickOutside__ } } - +export const noData = { + updated (el, binding) { + if (el) { + if (binding.value) { + el.innerHTML = '
No data
' + } + } + } +} export function isEqual (o1, o2) { const isEqualForInner = function (obj1, obj2) { const o1 = obj1 instanceof Object @@ -447,3 +455,5 @@ function JSONParse (data) { return firstParse } } + + diff --git a/src/views/charts/Chart.vue b/src/views/charts/Chart.vue index 280c45ea..a0176b29 100644 --- a/src/views/charts/Chart.vue +++ b/src/views/charts/Chart.vue @@ -46,6 +46,7 @@ :style="computePosition" :chartInfo="chartInfo" :loading="loading" + :no-data="noData" >