From 5a995a24857abb0a1dac5e4c67c600e54db01539 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 13 十月 2021 17:35:56 +0800
Subject: [PATCH] 2021-10-13

---
 src/tabviews/custom/components/card/cardcellList/index.jsx |   35 ++++++++++++++++++++++++-----------
 1 files changed, 24 insertions(+), 11 deletions(-)

diff --git a/src/tabviews/custom/components/card/cardcellList/index.jsx b/src/tabviews/custom/components/card/cardcellList/index.jsx
index 4121b61..3c47e00 100644
--- a/src/tabviews/custom/components/card/cardcellList/index.jsx
+++ b/src/tabviews/custom/components/card/cardcellList/index.jsx
@@ -590,18 +590,25 @@
       let _style = card.style ? {...card.style} : {}
 
       if (card.$sync) {
+        if (card.eval === 'false') {
+          val = ''
+        }
         this.props.syncData.forEach(item => {
           let _val = card.formula
           Object.keys(item).forEach(key => {
             let reg = new RegExp('@' + key + '@', 'ig')
             _val = _val.replace(reg, item[key])
           })
-          try {
-            // eslint-disable-next-line
-            _val = eval(_val)
-          } catch (e) {
-            _val = 0
+          if (card.eval !== 'false') {
+            try {
+              // eslint-disable-next-line
+              _val = eval(_val)
+            } catch (e) {
+              _val = 0
+            }
           }
+
+          if (!val) return
 
           val += _val
         })
@@ -612,18 +619,24 @@
           _val = _val.replace(reg, data[key])
         })
 
-        try {
-          // eslint-disable-next-line
-          _val = eval(_val)
-        } catch (e) {
-          _val = 0
+        if (card.eval !== 'false') {
+          try {
+            // eslint-disable-next-line
+            _val = eval(_val)
+          } catch (e) {
+            _val = ''
+          }
         }
 
-        val = _val
+        val = _val === undefined ? '' : _val
       }
 
       if (val !== '') {
         val = `${card.prefix || ''}${val}${card.postfix || ''}`
+        if (card.eval === 'false' && /\s/ig.test(val)) {
+          val = val.replace(/\s/ig, '&nbsp;')
+          val = <span dangerouslySetInnerHTML={{__html: val}}></span>
+        }
       }
 
       if (card.marks) {

--
Gitblit v1.8.0