From 97e18fa9b628357fa43013cfefc96eec078de25e Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 16 一月 2023 15:58:12 +0800
Subject: [PATCH] 2023-01-16

---
 src/tabviews/custom/components/carousel/prop-card/index.jsx |   19 +++++++++++++++----
 1 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/src/tabviews/custom/components/carousel/prop-card/index.jsx b/src/tabviews/custom/components/carousel/prop-card/index.jsx
index 3d4652c..0b5782b 100644
--- a/src/tabviews/custom/components/carousel/prop-card/index.jsx
+++ b/src/tabviews/custom/components/carousel/prop-card/index.jsx
@@ -31,6 +31,8 @@
     visible: false
   }
 
+  loaded = false
+
   UNSAFE_componentWillMount () {
     const { data, initdata } = this.props
     let _config = fromJS(this.props.config).toJS()
@@ -51,7 +53,7 @@
       BID = BData.$BID || ''
     }
     
-    if (_config.setting && _config.wrap.datatype === 'dynamic') {
+    if (_config.wrap.datatype === 'dynamic') {
       _sync = _config.setting.sync === 'true'
 
       if (_sync && data) {
@@ -60,13 +62,17 @@
           _data = _data[0] || {$$empty: true}
         }
         _sync = false
+        this.loaded = true
       } else if (_sync && initdata) {
         _data = initdata
         if (Array.isArray(_data)) {
           _data = _data[0] || {$$empty: true}
         }
         _sync = false
+        this.loaded = true
       }
+    } else if (_config.wrap.datatype === 'static') {
+      this.loaded = true
     }
 
     _data.$$uuid = _data[_config.setting.primaryKey] || ''
@@ -117,7 +123,7 @@
   }
 
   componentDidMount () {
-    const { config, sync } = this.state
+    const { config } = this.state
 
     MKEmitter.addListener('reloadData', this.reloadData)
     MKEmitter.addListener('resetSelectLine', this.resetParentParam)
@@ -131,9 +137,9 @@
       })
     }
 
-    if (config.$cache && (config.setting.sync !== 'true' || sync)) {
+    if (config.$cache && !this.loaded) {
       Api.getLCacheConfig(config.uuid).then(res => {
-        if (!res) return
+        if (!res || this.loaded) return
 
         let _data = res[0]
         _data.$$uuid = _data[config.setting.primaryKey] || ''
@@ -177,6 +183,8 @@
       _data.$$uuid = _data[config.setting.primaryKey] || ''
       _data.$$BID = BID || ''
       _data.$$BData = BData || ''
+
+      this.loaded = true
 
       this.setState({sync: false, data: _data}, () => {
         if (config.wrap.display === 'modal') {
@@ -282,6 +290,8 @@
       this.setState({
         data: {$$BID: BID || '', $$BData: BData, $$empty: true}
       })
+
+      this.loaded = true
       return
     }
 
@@ -305,6 +315,7 @@
     if (result.status) {
       let _data = {}
 
+      this.loaded = true
       if (config.$cache) {
         Api.writeCacheConfig(config.uuid, result.data || '')
       }

--
Gitblit v1.8.0