feat: auto fresh

This commit is contained in:
Fine 2023-02-07 12:23:54 +08:00
parent 2ebc9f25cc
commit 7c94adc8bb

View File

@ -54,6 +54,9 @@ limitations under the License. -->
import { useQueryProcessor, useSourceProcessor, useGetMetricEntity } from "@/hooks/useMetricsProcessor";
import graphs from "./graphs";
import { EntityType } from "./data";
import { TimeType } from "@/constants/data";
import getLocalTime from "@/utils/localtime";
import timeFormat from "@/utils/timeFormat";
export default defineComponent({
name: "WidgetPage",
@ -72,18 +75,34 @@ limitations under the License. -->
const dashboardStore = useDashboardStore();
const title = computed(() => (config.value.widget && config.value.widget.title) || "");
const tips = computed(() => (config.value.widget && config.value.widget.tips) || "");
const gap = ref<number>(0);
init();
async function init() {
const { auto } = config.value;
if (auto) {
gap.value = Number(auto.value) * 60 * 1000;
if (auto.step === TimeType.HOUR_TIME) {
gap.value = Number(auto.value) * 60 * 60 * 1000;
}
if (auto.step === TimeType.DAY_TIME) {
gap.value = Number(auto.value) * 60 * 60 * 60 * 1000;
}
await setDuration();
appStoreWithOut.setReloadTimer(setInterval(setDuration, gap.value));
}
dashboardStore.setLayer(route.params.layer);
dashboardStore.setEntity(route.params.entity);
await setDuration();
await setSelector();
await queryMetrics();
}
async function setDuration() {
// if (config.value.auto) {
// }
const dates: Date[] = [
getLocalTime(appStoreWithOut.utc, new Date(new Date().getTime() - gap.value)),
getLocalTime(appStoreWithOut.utc, new Date()),
];
appStoreWithOut.setDuration(timeFormat(dates));
}
async function setSelector() {
const { serviceId, podId, processId, destServiceId, destPodId, destProcessId, entity } = route.params;