diff --git a/platform/example/src/component/AddStep.tsx b/platform/example/src/component/AddStep.tsx
index 1b5d302..265af60 100644
--- a/platform/example/src/component/AddStep.tsx
+++ b/platform/example/src/component/AddStep.tsx
@@ -1,15 +1,17 @@
import {Dropdown, MenuProps, Space} from "antd";
import style from "@/component/layout/css/header.module.less";
import {DownOutlined} from "@ant-design/icons";
-import {menus, stepList, stepMap} from "@/component/step";
+import {stepMap} from "@/component/step";
import drapStore from "@/mobx/DrapStore";
+import Menus from "@/component/step/menus";
-console.log(stepList)
-const items: MenuProps['items'] = [...menus];
+// console.log(stepList)
+const items: MenuProps['items'] = [...Menus];
const onClick: MenuProps['onClick'] = ({ key }) => {
// 给容器添加组件
// message.info(`Click on item ${key}`);
+ console.log(stepMap)
const component = stepMap[key];
console.log(key,component)
drapStore.addChildren(null,component.defaultDataFunc())
diff --git a/platform/example/src/component/CardItem.tsx b/platform/example/src/component/CardItem.tsx
index 62377e9..a066907 100644
--- a/platform/example/src/component/CardItem.tsx
+++ b/platform/example/src/component/CardItem.tsx
@@ -7,6 +7,7 @@ import {stepMap} from "@/component/step";
import lodash from "lodash"
// import AddStep from "./AddStep";
import {DownOutlined} from "@ant-design/icons";
+import AddStep from "@/component/AddStep";
let id = 0
export const getDropStoreId = (type?:string) =>{
const DropStore = {
@@ -174,19 +175,20 @@ const CardItem = memo((props:CardItemProps) => {
}),
}),[data])
const step = stepMap[data.mold]
- const StepComponent = step&&step.Menu.component;
+ const StepComponent = step&&step.component;
const updateData = (data:string) =>{
props.data.data.content = data
drapStore.updateState()
}
- // const addStepDom = ()=>{
- // return
- // 新增步骤
- //
- //
- // }
+ const addStepDom = ()=>{
+ return
+ 新增步骤
+
+
+
+ }
return (
drag(drop(node))} >
@@ -206,7 +208,7 @@ const CardItem = memo((props:CardItemProps) => {
{props.children}
{props.data.type===StepDragEnum.CONTAINER&&(
childrenDrop(node)} className={style.woodExampleChildren}>
拖动到此处或者
- {/*{addStepDom()}*/}
+ {addStepDom()}
)}
diff --git a/platform/example/src/component/step/http/Edit.tsx b/platform/example/src/component/step/http/Edit.tsx
index 44a661b..a9ee715 100644
--- a/platform/example/src/component/step/http/Edit.tsx
+++ b/platform/example/src/component/step/http/Edit.tsx
@@ -34,6 +34,7 @@ class HttpEditComponent extends Component
{
const content = Object.assign({
url:urlDefaultData
},props.data)
+ console.log(1)
this.state = {
data:content
}
diff --git a/platform/example/src/component/step/http/index.tsx b/platform/example/src/component/step/http/index.tsx
index 90aee93..a2185b4 100644
--- a/platform/example/src/component/step/http/index.tsx
+++ b/platform/example/src/component/step/http/index.tsx
@@ -2,7 +2,7 @@ import {Content, StepDragEnum, StepDragType} from "@/component/type";
import {getDropStoreId} from "@/component/CardItem";
import HttpEditComponent from "./Edit"
import {StepComponentExport} from "@/component/step";
-const name = "HttpStepComponent"
+const name = "HTTP"
const tagStore = getDropStoreId("http")
interface HttpInterface extends Content{
@@ -32,6 +32,7 @@ const defaultDataFunc = () =>{
originalIndex:store.id,
children:[],
parent:null,
+ destruction:()=>{},
data:data
}
return defaultData
@@ -40,16 +41,11 @@ const defaultDataFunc = () =>{
-const headerStepOption = {
-}
const exportData:StepComponentExport = {
- Menu:{
- label:"HTTP",
- key:name,
- options:headerStepOption,
- component:HttpEditComponent
- },
+
+ key:"HTTP",
+ component:HttpEditComponent,
defaultDataFunc
}
export default exportData
diff --git a/platform/example/src/component/step/http/menu.ts b/platform/example/src/component/step/http/menu.ts
new file mode 100644
index 0000000..80a6cd4
--- /dev/null
+++ b/platform/example/src/component/step/http/menu.ts
@@ -0,0 +1,11 @@
+import {MenuItem} from "@/component/step";
+const name = "HTTP"
+const headerStepOption = {
+
+}
+const menu:MenuItem = {
+ label:"HTTP",
+ key:name,
+ options:headerStepOption
+}
+export default menu
\ No newline at end of file
diff --git a/platform/example/src/component/step/index.ts b/platform/example/src/component/step/index.ts
index c8f405b..ab62b23 100644
--- a/platform/example/src/component/step/index.ts
+++ b/platform/example/src/component/step/index.ts
@@ -1,20 +1,19 @@
-import HttpStepComponent from "./http"
-import LoopEditComponent from "./loop"
+import Http from "./http"
+import Loop from "./loop"
import {ComponentClass} from "react"
import {Content, StepDragType} from "@/component/type";
import {stepProps} from "@/component/step/type";
-interface Menu {
+export interface MenuItem {
label: string
key: string
options: {}
- component: ComponentClass
}
export interface StepComponentExport {
- Menu: Menu
-
+ key: string
+ component: ComponentClass
defaultDataFunc: () => StepDragType
}
@@ -23,15 +22,16 @@ interface stepMapType {
}
export const stepList = [
- HttpStepComponent,
- LoopEditComponent
+ Http,
+ Loop
]
-export const menus:Menu[] = stepList.map(step=>step.Menu)
+// export const menus:Menu[] = stepList.map(step=>step.Menu)
export const stepMap: stepMapType = {}
stepList.forEach(step => {
- stepMap[step.Menu.key] = step
+ stepMap[step.key] = step
})
+console.log(stepMap)
export default {
stepList,
stepMap
diff --git a/platform/example/src/component/step/loop/index.tsx b/platform/example/src/component/step/loop/index.tsx
index 3800f1b..26e9953 100644
--- a/platform/example/src/component/step/loop/index.tsx
+++ b/platform/example/src/component/step/loop/index.tsx
@@ -5,7 +5,7 @@ import {StepComponentExport} from "@/component/step";
import HttpEditComponent from "@/component/step/http/Edit";
import LoopEditComponent from "@/component/step/loop/Edit";
const tagStore = getDropStoreId("loop")
-const name = "LoopStepComponent"
+const name = "Loop"
const LoopData:LoopInterface = {
content: "",
id:0,
@@ -36,16 +36,10 @@ const defaultDataFunc = () =>{
}
return defaultData
}
-const LoopStepOption = {
-}
const exportData:StepComponentExport = {
- Menu:{
- label:"LOOP",
- key:name,
- options:LoopStepOption,
- component:LoopEditComponent
- },
+ key:"LOOP",
+ component:LoopEditComponent,
defaultDataFunc
}
export default exportData
diff --git a/platform/example/src/component/step/loop/menu.ts b/platform/example/src/component/step/loop/menu.ts
new file mode 100644
index 0000000..a2cb2a5
--- /dev/null
+++ b/platform/example/src/component/step/loop/menu.ts
@@ -0,0 +1,9 @@
+const name = "LOOP"
+const LoopStepOption = {}
+const menu = {
+ label: "LOOP",
+ key: name,
+ options: LoopStepOption
+
+}
+export default menu
\ No newline at end of file
diff --git a/platform/example/src/component/step/menus.ts b/platform/example/src/component/step/menus.ts
new file mode 100644
index 0000000..fa5a33f
--- /dev/null
+++ b/platform/example/src/component/step/menus.ts
@@ -0,0 +1,9 @@
+import loopMenu from "@/component/step/loop/menu";
+import httpMenu from "@/component/step/http/menu";
+
+const Menus = [
+ loopMenu,
+ httpMenu
+]
+
+export default Menus
\ No newline at end of file
diff --git a/platform/example/src/mobx/DrapStore.ts b/platform/example/src/mobx/DrapStore.ts
index 43482e2..39b072c 100644
--- a/platform/example/src/mobx/DrapStore.ts
+++ b/platform/example/src/mobx/DrapStore.ts
@@ -65,7 +65,7 @@ class DrapStore {
}
@action
addChildren(drop: StepDragType|null, dropNew: StepDragType) {
- console.log(drop)
+ console.log(drop,dropNew)
if(drop===null){
this.state.push(dropNew)
this.updateState()