king
2023-01-17 d5ce81026882ada34e5d49411be7c90ee96cc102
src/tabviews/custom/components/carousel/data-card/index.jsx
@@ -32,6 +32,8 @@
    visible: false
  }
  loaded = false
  UNSAFE_componentWillMount () {
    const { data, initdata } = this.props
    let _config = fromJS(this.props.config).toJS()
@@ -62,6 +64,7 @@
    }
    if (_data) {
      this.loaded = true
      _data = _data.map((item, index) => {
        item.key = index
        item.$$uuid = item[_config.setting.primaryKey] || ''
@@ -129,6 +132,21 @@
        this.loadData('timer')
      })
    }
    if (config.$cache && !this.loaded) {
      Api.getLCacheConfig(config.uuid).then(res => {
        if (!res || this.loaded) return
        let _data = res.map((item, index) => {
          item.key = index
          item.$$uuid = item[config.setting.primaryKey] || ''
          item.$Index = index + 1 + ''
          return item
        })
        this.setState({data: _data})
      })
    }
  }
  shouldComponentUpdate (nextProps, nextState) {
@@ -152,6 +170,8 @@
        item.$Index = index + 1
        return item
      })
      this.loaded = true
      this.setState({sync: false, data: _data}, () => {
        this.openModal()
@@ -256,6 +276,8 @@
        data: [],
        loading: false
      })
      this.loaded = true
      return
    }
@@ -276,6 +298,11 @@
    let result = await Api.genericInterface(param)
    if (result.status) {
      this.loaded = true
      if (config.$cache) {
        Api.writeCacheConfig(config.uuid, result.data || '')
      }
      this.setState({
        data: result.data.map((item, index) => {
          item.key = index