/** * @description 组件设计画布 */ import React from "react" import { observer, PropertyService, StateManage } from "../../../" import { CloseCircleOutlined, EditOutlined } from "@ant-design/icons" import { cloneDeep } from "lodash" import { eventTopic, containerClassName, dragOverStyle, dragLeaveStyle } from "../config" import { onEdit } from "./onEdit" import { onDrop } from "./onDrop" import { onDelete } from "./onDelete" export const Layout = ({ config }) => { const state = PropertyService.getObservableObj({ config }) const Template = observer(function () { const config = StateManage.get(state, "config") const { children = [] } = config const onDragStart = (ev, data) => { ev.dataTransfer.setData(eventTopic.DragLayout, JSON.stringify(data)) } const onDragOver = (ev, data) => { ev.preventDefault() if (ev.target.classList.contains(containerClassName)) { ev.target.style.border = dragOverStyle } } return