This is an automated email from the ASF dual-hosted git repository.
wuzhiguo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/bigtop-manager.git
The following commit(s) were added to refs/heads/main by this push:
new 05a6789 BIGTOP-4179: Fix wrong total number of pagination values in
job table (#34)
05a6789 is described below
commit 05a678923e7ee3faa27319deb8d9b341f037e9d8
Author: Fdefined <[email protected]>
AuthorDate: Mon Aug 5 14:34:26 2024 +0800
BIGTOP-4179: Fix wrong total number of pagination values in job table
(#34)
---
bigtop-manager-ui/src/components/job-info/job.vue | 23 ++++++++--------------
.../src/components/service-add/index.vue | 10 +++++++++-
.../src/components/svg-icon/svg-icon.vue | 9 +++++----
bigtop-manager-ui/src/layouts/index.vue | 11 ++++++-----
bigtop-manager-ui/src/pages/service/index.vue | 14 +++++++++++--
5 files changed, 40 insertions(+), 27 deletions(-)
diff --git a/bigtop-manager-ui/src/components/job-info/job.vue
b/bigtop-manager-ui/src/components/job-info/job.vue
index e645c60..24a158a 100644
--- a/bigtop-manager-ui/src/components/job-info/job.vue
+++ b/bigtop-manager-ui/src/components/job-info/job.vue
@@ -138,7 +138,6 @@
loading.value = false
return
}
- getJobsList()
initInterval()
}
@@ -147,13 +146,10 @@
intervalId.value?.resume()
return
}
- intervalId.value = useIntervalFn(
- async () => {
- await getJobsList()
- },
- MONITOR_SCHEDULE_INTERVAL,
- { immediate: false, immediateCallback: true }
- )
+ intervalId.value = useIntervalFn(getJobsList, MONITOR_SCHEDULE_INTERVAL, {
+ immediate: true,
+ immediateCallback: true
+ })
}
const getJobsList = async () => {
@@ -163,12 +159,9 @@
pageSize: paginationProps.value.pageSize,
sort: 'desc'
} as Pagination
- const { content } = await getJobs(clusterId.value, params)
- jobs.value = content.map((v) => {
- return {
- ...v
- }
- })
+ const { content, total } = await getJobs(clusterId.value, params)
+ jobs.value = content.map((v) => ({ ...v }))
+ paginationProps.value.total = total
loading.value = false
} catch (error) {
console.log('error :>> ', error)
@@ -255,7 +248,7 @@
</div>
<a-table
v-show="getCurrPage == 'isJobTable'"
- :scroll="{ y: 500 }"
+ :scroll="{ y: 400 }"
:loading="loading"
:data-source="jobs"
:columns="columnsProp"
diff --git a/bigtop-manager-ui/src/components/service-add/index.vue
b/bigtop-manager-ui/src/components/service-add/index.vue
index d603360..496d599 100644
--- a/bigtop-manager-ui/src/components/service-add/index.vue
+++ b/bigtop-manager-ui/src/components/service-add/index.vue
@@ -18,7 +18,7 @@
-->
<script setup lang="ts">
- import { ref, h, watch, reactive } from 'vue'
+ import { ref, h, watch, reactive, onUnmounted, onMounted } from 'vue'
import { Modal } from 'ant-design-vue'
import { ExclamationCircleFilled } from '@ant-design/icons-vue'
import { useI18n } from 'vue-i18n'
@@ -187,6 +187,14 @@
}
})
}
+
+ onMounted(() => {
+ componentStore.resumeIntervalFn()
+ })
+
+ onUnmounted(() => {
+ componentStore.pauseIntervalFn()
+ })
</script>
<template>
diff --git a/bigtop-manager-ui/src/components/svg-icon/svg-icon.vue
b/bigtop-manager-ui/src/components/svg-icon/svg-icon.vue
index d8656c8..4255c8f 100644
--- a/bigtop-manager-ui/src/components/svg-icon/svg-icon.vue
+++ b/bigtop-manager-ui/src/components/svg-icon/svg-icon.vue
@@ -21,15 +21,16 @@
import { computed } from 'vue'
interface SvgIconProps {
- prefix: string
+ prefix?: string
name: string
- color: string
- className: string
+ color?: string
+ className?: string
}
const props = withDefaults(defineProps<SvgIconProps>(), {
prefix: 'icon',
- color: '#000'
+ color: '#000',
+ className: ''
})
const symbolId = computed(() => `#${props.prefix}-${props.name}`)
diff --git a/bigtop-manager-ui/src/layouts/index.vue
b/bigtop-manager-ui/src/layouts/index.vue
index 3b2cf23..1005fa0 100644
--- a/bigtop-manager-ui/src/layouts/index.vue
+++ b/bigtop-manager-ui/src/layouts/index.vue
@@ -18,7 +18,7 @@
-->
<script setup lang="ts">
- import { onMounted } from 'vue'
+ import { onMounted, onUnmounted } from 'vue'
import LayoutFooter from '@/layouts/footer.vue'
import LayoutContent from '@/layouts/content.vue'
import LayoutHeader from '@/layouts/header.vue'
@@ -37,14 +37,15 @@
onMounted(() => {
userStore.getUserInfo()
-
clusterStore.loadClusters()
-
- console.log('loading...')
serviceStore.loadServices()
- componentStore.loadHostComponents()
+ componentStore.resumeIntervalFn()
configStore.loadLatestConfigs()
})
+
+ onUnmounted(() => {
+ componentStore.pauseIntervalFn()
+ })
</script>
<template>
diff --git a/bigtop-manager-ui/src/pages/service/index.vue
b/bigtop-manager-ui/src/pages/service/index.vue
index fc0fbfe..be03f3e 100644
--- a/bigtop-manager-ui/src/pages/service/index.vue
+++ b/bigtop-manager-ui/src/pages/service/index.vue
@@ -20,7 +20,14 @@
<script setup lang="ts">
import { storeToRefs } from 'pinia'
import { useRoute } from 'vue-router'
- import { computed, onMounted, ref, watch, createVNode } from 'vue'
+ import {
+ computed,
+ onMounted,
+ ref,
+ watch,
+ createVNode,
+ onUnmounted
+ } from 'vue'
import { useI18n } from 'vue-i18n'
import { type SelectProps, type MenuProps, Modal } from 'ant-design-vue'
@@ -200,13 +207,16 @@
activeSelect.value = serviceConfigDesc.value?.[0]
currentConfigVersion.value = serviceConfigDesc.value?.[0].value as number
initConfigVersion.value = serviceConfigDesc.value?.[0].value as number
- await componentStore.loadHostComponents()
}
onMounted(() => {
initServiceMeta()
componentStore.resumeIntervalFn()
})
+
+ onUnmounted(() => {
+ componentStore.pauseIntervalFn()
+ })
</script>
<template>