import { useEditor } from "@/modules/editor"; import { ICompKeys } from "@/modules/editor/typings"; import { css } from "@linaria/core"; import { useReactive } from "@queenjs/use"; import { Tooltip } from "ant-design-vue"; import { defineComponent } from "vue"; import { Container, Draggable } from "vue-dndrop"; export default defineComponent({ setup() { const editor = useEditor(); const { compUICtrl } = editor.controls; const state = useReactive(() => ({ basicComps() { return ["Text", "Image", "Video", "Web3D"].map( (key) => compUICtrl.state.components.get(key) as any ); }, })); return () => { return ( { return state.basicComps[index].compKey; }} > {state.basicComps.map((item) => { return (
editor.actions.clickCompToDesign(item.compKey as ICompKeys) } >
); })}
); }; }, }); const basicStyle = css` display: flex; align-items: center; .draggable-item { border-radius: 4px; margin: 0 4px; cursor: pointer; &:hover { background-color: darken(@inf-component-bg, 3%); } } `;