From a6f4267915fc0c7b3f6b5b8de8fb9cf482637f64 Mon Sep 17 00:00:00 2001 From: tnt group Date: Wed, 12 Oct 2022 16:41:49 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=BF=87=E6=BB=A4=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0api=E8=BF=94=E5=9B=9E=E9=A1=B6=E7=BA=A7?= =?UTF-8?q?=E5=AF=B9=E8=B1=A1=E4=BD=9C=E4=B8=BA=E5=8F=82=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E5=A2=9E=E5=BC=BA=E8=BF=87=E6=BB=A4=E5=99=A8=E5=85=BC=E5=AE=B9?= =?UTF-8?q?=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/hooks/useChartDataFetch.hook.ts | 8 +++--- src/utils/utils.ts | 25 ++++++------------- .../components/ChartDataAjax/index.vue | 8 +++--- .../ChartDataMonacoEditor/index.vue | 21 ++++++++++------ 4 files changed, 29 insertions(+), 33 deletions(-) diff --git a/src/hooks/useChartDataFetch.hook.ts b/src/hooks/useChartDataFetch.hook.ts index 9a0b7c0f..df48ae16 100644 --- a/src/hooks/useChartDataFetch.hook.ts +++ b/src/hooks/useChartDataFetch.hook.ts @@ -59,18 +59,18 @@ export const useChartDataFetch = ( const fetchFn = async () => { const res = await customizeHttp(toRaw(targetComponent.request), toRaw(chartEditStore.requestGlobalConfig)) - if (res && res.data) { + if (res) { try { const filter = targetComponent.filter // eCharts 组件配合 vChart 库更新方式 if (chartFrame === ChartFrameEnum.ECHARTS) { if (vChartRef.value) { - vChartRef.value.setOption({ dataset: newFunctionHandle(res.data, filter) }) + vChartRef.value.setOption({ dataset: newFunctionHandle(res?.data, res, filter) }) } } // 更新回调函数 if (updateCallback) { - updateCallback(newFunctionHandle(res.data, filter)) + updateCallback(newFunctionHandle(res?.data, res, filter)) } } catch (error) { console.error(error) @@ -90,7 +90,7 @@ export const useChartDataFetch = ( } // eslint-disable-next-line no-empty } catch (error) { - console.log(error); + console.log(error) } } diff --git a/src/utils/utils.ts b/src/utils/utils.ts index 8b686eb0..ed607783 100644 --- a/src/utils/utils.ts +++ b/src/utils/utils.ts @@ -22,7 +22,7 @@ export const isDev = () => { * @param { Number } randomLength */ export const getUUID = (randomLength = 10) => { - return Number(Math.random().toString().substr(2, randomLength) + Date.now()).toString(36) + return Number(Math.random().toString().substring(2, randomLength) + Date.now()).toString(36) } /** @@ -43,21 +43,8 @@ export const renderLang = (lang: string, set = {}, tag = 'span') => { return () => h(tag, set, { default: () => window['$t'](lang) }) } -/** - * ! 编译会报错,暂不使用 - * * 处理 vite 中无法使用 require 的问题,utils 文件为根路径 - * @param path - * @param name - * @returns url - */ -// export const requireUrl = (path: string, name: string) => { -// return new URL(`${path}/${name}`, import.meta.url).href -// } - /** * * 获取错误处理图片,默认 404 图 - * @param path - * @param name * @returns url */ export const requireErrorImg = () => { @@ -193,14 +180,16 @@ export const canvasCut = (html: HTMLElement | null, callback?: Function) => { /** * * 函数过滤器 * @param data 数据值 + * @param res 返回顶级对象 * @param funcStr 函数字符串 - * @param toString 转为字符串 + * @param isToString 是否转为字符串 * @param errorCallBack 错误回调函数 * @param successCallBack 成功回调函数 * @returns */ export const newFunctionHandle = ( data: any, + res: any, funcStr?: string, isToString?: boolean, errorCallBack?: Function, @@ -208,8 +197,8 @@ export const newFunctionHandle = ( ) => { try { if (!funcStr) return data - const fn = new Function('data', funcStr) - const fnRes = fn(cloneDeep(data)) + const fn = new Function('data', 'res', funcStr) + const fnRes = fn(cloneDeep(data), cloneDeep(res)) const resHandle = isToString ? toString(fnRes) : fnRes // 成功回调 successCallBack && successCallBack(resHandle) @@ -258,5 +247,5 @@ export const objToCookie = (obj: RequestParamsObjType) => { for (const key in obj) { str += key + '=' + obj[key] + ';' } - return str.substr(0, str.length - 1) + return str.substring(0, str.length - 1) } diff --git a/src/views/chart/ContentConfigurations/components/ChartData/components/ChartDataAjax/index.vue b/src/views/chart/ContentConfigurations/components/ChartData/components/ChartDataAjax/index.vue index 2c03df5b..07dd0dad 100644 --- a/src/views/chart/ContentConfigurations/components/ChartData/components/ChartDataAjax/index.vue +++ b/src/views/chart/ContentConfigurations/components/ChartData/components/ChartDataAjax/index.vue @@ -127,15 +127,15 @@ const sendHandle = async () => { try { const res = await customizeHttp(toRaw(targetData.value.request), toRaw(chartEditStore.requestGlobalConfig)) loading.value = false - if (res && res.data) { - targetData.value.option.dataset = newFunctionHandle(res.data, targetData.value.filter) + if (res) { + targetData.value.option.dataset = newFunctionHandle(res?.data, res, targetData.value.filter) showMatching.value = true return } - window['$message'].warning('数据异常,请检查参数!') + window['$message'].warning('数据异常,请检查参数!@@@@') } catch (error) { loading.value = false - window['$message'].warning('数据异常,请检查参数!') + window['$message'].warning('数据异常,请检查参数!@@@@') } } diff --git a/src/views/chart/ContentConfigurations/components/ChartData/components/ChartDataMonacoEditor/index.vue b/src/views/chart/ContentConfigurations/components/ChartData/components/ChartDataMonacoEditor/index.vue index f890f2f7..879b00d5 100644 --- a/src/views/chart/ContentConfigurations/components/ChartData/components/ChartDataMonacoEditor/index.vue +++ b/src/views/chart/ContentConfigurations/components/ChartData/components/ChartDataMonacoEditor/index.vue @@ -1,7 +1,7 @@