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