Skip to content

Commit

Permalink
fix: 优化组件大纲
Browse files Browse the repository at this point in the history
  • Loading branch information
JackySoft committed Sep 22, 2024
1 parent e10a8cf commit fe49a68
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 21 deletions.
36 changes: 24 additions & 12 deletions packages/editor/src/layout/components/Menu/OutlinePanel.tsx
Original file line number Diff line number Diff line change
@@ -1,17 +1,21 @@
import { usePageStore } from '@/stores/pageStore';
import { DownOutlined } from '@ant-design/icons';
import { memo, useEffect, useState } from 'react';
import { Tree, Row } from 'antd';
import { useState } from 'react';

import { DownOutlined } from '@ant-design/icons';
import { usePageStore } from '@/stores/pageStore';
import { useShallow } from 'zustand/react/shallow';
import style from './index.module.less';
/**
* 大纲
*/
const OutlinePanel = () => {
const { pageName, elements, setSelectedElement } = usePageStore((state) => ({
pageName: state.page.pageName,
elements: state.page.elements,
setSelectedElement: state.setSelectedElement,
}));
const OutlinePanel = memo(() => {
const { pageName, elements, selectedEl, setSelectedElement } = usePageStore(
useShallow((state) => ({
pageName: state.page.pageName,
elements: state.page.elements,
selectedEl: state.selectedElement,
setSelectedElement: state.setSelectedElement,
})),
);
const [selectedKeys, setSelectedKeys] = useState<string[]>([]);

const treeData: any = [
Expand All @@ -21,6 +25,14 @@ const OutlinePanel = () => {
elements,
},
];

useEffect(() => {
if (selectedEl) {
setSelectedKeys([selectedEl.id]);
} else {
setSelectedKeys([]);
}
}, [selectedEl]);
const handleSelect = (selectedKeys: any, { node }: any) => {
setSelectedKeys(selectedKeys);
if (selectedKeys.length > 0) {
Expand All @@ -34,7 +46,7 @@ const OutlinePanel = () => {
};

return (
<Row style={{ paddingRight: '24px', height: 'calc(100vh - 110px)', overflowY: 'auto' }}>
<Row className={style.outlinePanel}>
<Tree
showLine
defaultExpandAll
Expand All @@ -46,6 +58,6 @@ const OutlinePanel = () => {
/>
</Row>
);
};
});

export default OutlinePanel;
12 changes: 12 additions & 0 deletions packages/editor/src/layout/components/Menu/index.module.less
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,15 @@
}
}
}
// 组件大纲
.outlinePanel {
padding-right: 24px;
height: calc(100vh - 110px);
overflow-y: auto;
:global {
.ant-tree .ant-tree-node-selected {
background-color: #9d5cff;
color: #fff;
}
}
}
13 changes: 4 additions & 9 deletions packages/editor/src/packages/Map/BMap/Schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ export default {
type: 'Title',
label: '基础配置',
name: 'basic',
link: {
url: 'https://api.map.baidu.com/lbsapi/getpoint/index.html',
label: '坐标拾取',
},
},
{
type: 'Input',
Expand Down Expand Up @@ -107,15 +111,6 @@ export default {
label: '显示覆盖物',
name: 'showOverlay',
},
{
type: 'Title',
label: '覆盖物',
name: 'overlay',
link: {
url: 'https://api.map.baidu.com/lbsapi/getpoint/index.html',
label: '坐标拾取',
},
},
],
config: {
// 组件默认属性值
Expand Down

0 comments on commit fe49a68

Please sign in to comment.