diff --git a/src/hooks/useChartDataFetch.hook.ts b/src/hooks/useChartDataFetch.hook.ts index f32be1b8..362cbce0 100644 --- a/src/hooks/useChartDataFetch.hook.ts +++ b/src/hooks/useChartDataFetch.hook.ts @@ -9,7 +9,6 @@ import { isPreview, newFunctionHandle } from '@/utils' // 获取类型 type ChartEditStoreType = typeof useChartEditStore - /** * setdata 数据监听与更改 * @param targetComponent @@ -30,7 +29,12 @@ export const useChartDataFetch = ( // 组件类型 const { chartFrame } = targetComponent.chartConfig // 请求配置 - const { requestDataType, requestHttpType, requestUrl } = toRefs(targetComponent.data) + const { + requestDataType, + requestHttpType, + requestUrl, + requestInterval: targetInterval + } = toRefs(targetComponent.request) // 非请求类型 if (requestDataType.value !== RequestDataTypeEnum.AJAX) return // 处理地址 @@ -65,12 +69,13 @@ export const useChartDataFetch = ( // 立即调用 fetchFn() + // 开启定时 - fetchInterval = setInterval(fetchFn, requestInterval.value * 1000) + const time = targetInterval && targetInterval.value ? targetInterval.value : requestInterval.value + fetchInterval = setInterval(fetchFn, time * 1000) } } isPreview() && requestIntervalFn() - return { vChartRef } } diff --git a/src/packages/index.d.ts b/src/packages/index.d.ts index 8d27862e..41a1caac 100644 --- a/src/packages/index.d.ts +++ b/src/packages/index.d.ts @@ -27,9 +27,7 @@ export type ConfigType = { // 数据请求 interface requestConfig { - data: RequestConfigType, - // 暂时约定为数据存储区域(未使用) - requestData: any + request: RequestConfigType, } // Echarts 数据类型 diff --git a/src/packages/public/publicConfig.ts b/src/packages/public/publicConfig.ts index 05df5e28..d4fde6be 100644 --- a/src/packages/public/publicConfig.ts +++ b/src/packages/public/publicConfig.ts @@ -7,7 +7,8 @@ import { chartInitConfig } from '@/settings/designSetting' const requestConfig: RequestConfigType = { requestDataType: RequestDataTypeEnum.STATIC, requestHttpType: RequestHttpEnum.GET, - requestUrl: '' + requestUrl: '', + requestInterval: undefined } export class publicConfig implements PublicConfigType { @@ -41,10 +42,8 @@ export class publicConfig implements PublicConfigType { // 动画 animations: [] } - // 数据 - public data = { ...requestConfig } - // 数据获取 - public requestData = [] + // 请求 + public request = { ...requestConfig } // 数据过滤 public filter = undefined diff --git a/src/store/modules/chartEditStore/chartEditStore.d.ts b/src/store/modules/chartEditStore/chartEditStore.d.ts index f26c0461..dab3a992 100644 --- a/src/store/modules/chartEditStore/chartEditStore.d.ts +++ b/src/store/modules/chartEditStore/chartEditStore.d.ts @@ -134,9 +134,10 @@ export enum ChartEditStoreEnum { export type RequestGlobalConfigType = { // 请求源地址 requestOriginUrl?: string - // 轮询时间 + // 全局默认轮询时间 requestInterval: number } + // 单个图表请求配置 export type RequestConfigType = { // 获取数据的方式 @@ -145,6 +146,8 @@ export type RequestConfigType = { requestHttpType: RequestHttpEnum // 源后续的 url requestUrl?: string + // 组件定制轮询时间 + requestInterval?: number } // Store 类型 diff --git a/src/views/chart/ContentConfigurations/components/CanvasPage/components/ChartDataSetting/index.vue b/src/views/chart/ContentConfigurations/components/CanvasPage/components/ChartDataSetting/index.vue index 7e4ec809..298a14ae 100644 --- a/src/views/chart/ContentConfigurations/components/CanvasPage/components/ChartDataSetting/index.vue +++ b/src/views/chart/ContentConfigurations/components/CanvasPage/components/ChartDataSetting/index.vue @@ -6,12 +6,12 @@ placeholder="源地址如: http://127.0.0.1" > - +