From b1df470c0c1ef83fdc5929c8ec369dcda022c38f Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 14 七月 2023 16:12:33 +0800 Subject: [PATCH] Merge branch 'master' into positec --- src/tabviews/custom/components/card/cardcellList/index.jsx | 24 ++++++++++++++++++++++-- 1 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/tabviews/custom/components/card/cardcellList/index.jsx b/src/tabviews/custom/components/card/cardcellList/index.jsx index 333a959..cb07a91 100644 --- a/src/tabviews/custom/components/card/cardcellList/index.jsx +++ b/src/tabviews/custom/components/card/cardcellList/index.jsx @@ -751,8 +751,26 @@ } else if (card.eleType === 'formula') { let val = 0 let _style = {...card.style} + + if (card.eval === 'func') { + let _data = [] + if (card.$sync) { + _data = this.props.syncData + } else if (data && !data.$$empty) { + _data = [data] + } - if (card.$sync) { + try { + // eslint-disable-next-line + let func = new Function('data', card.formula) + val = func(_data) + } catch (e) { + if (window.debugger) { + console.warn(e) + } + val = '' + } + } else if (card.$sync) { if (card.eval === 'false') { val = '' } @@ -813,7 +831,9 @@ val = val.toFixed(card.decimal) } - if (val !== '') { + if (card.eval === 'func') { + val = <span dangerouslySetInnerHTML={{__html: val}}></span> + } else if (val !== '') { if (val && typeof(val) === 'string') { val = val.replace(/\n/ig, '<br/>') if (!/<(span|div|p|a|img)\s/g.test(val)) { -- Gitblit v1.8.0