king
2023-03-11 34e7681fd12b1c4e4994d3bea1a553870e10bc50
src/mob/components/tabs/tabcomponents/index.jsx
@@ -2,11 +2,9 @@
import { useDrop } from 'react-dnd'
import { is, fromJS } from 'immutable'
import update from 'immutability-helper'
import { Empty, notification, Modal } from 'antd'
import { Empty, Modal } from 'antd'
import Utils from '@/utils/utils.js'
import MKEmitter from '@/utils/events.js'
import MenuUtils from '@/utils/utils-custom.js'
import Card from './card'
import './index.scss'
@@ -36,6 +34,25 @@
    handleList({...config, components: cards.map(item => item.uuid === element.uuid ? element : item)})
  }
  const unGroup = (id) => {
    let { card, index } = findCard(`${id}`)
    let components = [...card.components].map(item => {
      if (item.wrap) {
        item.wrap.width = card.width
        item.width = card.width
      } else if (item.plot) {
        item.plot.width = card.width
        item.width = card.width
      }
      return item
    })
    card.components = []
    const _cards = update(cards, { $splice: [[index, 1, card, ...components]] })
    handleList({...config, components: _cards})
  }
  const deleteCard = (id) => {
    const { card } = findCard(id)
@@ -48,17 +65,11 @@
      })
    }
    let uuids = MenuUtils.getDelButtonIds(card)
    confirm({
      title: `确定删除《${card.name}》吗?`,
      content: hasComponent ? '当前组件中含有子组件!' : '',
      onOk() {
        handleList({...config, components: cards.filter(item => item.uuid !== card.uuid)})
        if (uuids.length === 0) return
        MKEmitter.emit('delButtons', uuids)
      },
      onCancel() {}
    })
@@ -76,26 +87,8 @@
      item.added = true
      if (item.component === 'search') { // 移动端标签页中不可添加搜索
        // if (cards.filter(card => card.type === 'search').length > 0) {
        //   notification.warning({
        //     top: 92,
        //     message: '搜索条件不可重复添加!',
        //     duration: 5
        //   })
        //   return
        // }
        item.added = false
        return
      } else if (item.component === 'tabs') {
        let floor = MenuUtils.getFloor(config.parentId)
        if (floor >= 3 ) {
          notification.warning({
            top: 92,
            message: '标签页最多为三重结构!',
            duration: 5
          })
          return
        }
      }
      let name = ''
@@ -131,8 +124,6 @@
      
      let newcard = {
        uuid: Utils.getuuid(),
        tabId: config.uuid,
        parentId: config.parentId,
        type: item.component,
        subtype: item.subtype,
        config: item.config,
@@ -167,6 +158,7 @@
          card={card}
          moveCard={moveCard}
          delCard={deleteCard}
          unGroup={unGroup}
          findCard={findCard}
          updateConfig={updateConfig}
        />