From d2877d1a857aa017a16c5d429c87ccf1602543cf Mon Sep 17 00:00:00 2001 From: Li1304553726 <1304553726@qq.com> Date: Thu, 27 Feb 2025 22:39:31 +0800 Subject: [PATCH] add. LI --- .../src/components/common/editor/MindEditor.tsx | 16 +++++++++++++--- .../editor/context/CourseEditorContext.tsx | 3 ++- .../course/editor/form/CourseBasicForm.tsx | 2 +- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/apps/web/src/components/common/editor/MindEditor.tsx b/apps/web/src/components/common/editor/MindEditor.tsx index 88d745b..44530b1 100755 --- a/apps/web/src/components/common/editor/MindEditor.tsx +++ b/apps/web/src/components/common/editor/MindEditor.tsx @@ -19,6 +19,8 @@ import MindElixir from "mind-elixir"; import { useTusUpload } from "@web/src/hooks/useTusUpload"; import { useNavigate } from "react-router-dom"; import { useAuth } from "@web/src/providers/auth-provider"; + +// 定义 MindElixir 插件 的配置 const MIND_OPTIONS = { direction: MindElixir.SIDE, draggable: true, @@ -53,6 +55,7 @@ const MIND_OPTIONS = { }, }; export default function MindEditor({ id }: { id?: string }) { + //containerRef 容器ref instance 实例 const containerRef = useRef(null); const [instance, setInstance] = useState(null); const { isAuthenticated, user, hasSomePermissions } = useAuth(); @@ -71,14 +74,18 @@ export default function MindEditor({ id }: { id?: string }) { }, [user]) const navigate = useNavigate(); const { create, update } = usePost(); + //拿到slug数组 const { data: taxonomies } = api.taxonomy.getAll.useQuery({ type: ObjectType.COURSE, }); + const { handleFileUpload } = useTusUpload(); + //antd表单自带钩子 const [form] = Form.useForm(); + //post 信息 //instance 实例 useEffect(() => { if (post && form && instance && id) { - console.log(post); + console.log('你好',taxonomies); instance.refresh((post as any).meta); const deptIds = (post?.depts || [])?.map((dept) => dept.id); const formData = { @@ -86,8 +93,8 @@ export default function MindEditor({ id }: { id?: string }) { deptIds: deptIds, }; post.terms?.forEach((term) => { - formData[term.taxonomyId] = term.id; // 假设 taxonomyName 是您在 Form.Item 中使用的 name - }); + formData[term.taxonomyId] = term.id // 假设 taxonomyName是您在 Form.Item 中使用的name + }) form.setFieldsValue(formData); } }, [post, form, instance, id]); @@ -108,8 +115,10 @@ export default function MindEditor({ id }: { id?: string }) { nodeMenu: canEdit, // 禁用节点右键菜单 keypress: canEdit, // 禁用键盘快捷键 }); + //初始化 mind.init(MindElixir.new("新学习路径")); containerRef.current.hidden = true; + //挂载实例 setInstance(mind); }, [canEdit]); useEffect(() => { @@ -119,6 +128,7 @@ export default function MindEditor({ id }: { id?: string }) { instance.refresh((post as any)?.meta); } }, [id, post, instance]); + //保存 按钮 函数 const handleSave = async () => { if (!instance) return; const values = form.getFieldsValue(); diff --git a/apps/web/src/components/models/course/editor/context/CourseEditorContext.tsx b/apps/web/src/components/models/course/editor/context/CourseEditorContext.tsx index bc84b18..90bcd04 100755 --- a/apps/web/src/components/models/course/editor/context/CourseEditorContext.tsx +++ b/apps/web/src/components/models/course/editor/context/CourseEditorContext.tsx @@ -82,7 +82,7 @@ export function CourseFormProvider({ }, [course, form]); const onSubmit = async (values: any) => { - console.log(values); + const sections = values?.sections || []; const deptIds = values?.deptIds || []; const termIds = taxonomies @@ -149,6 +149,7 @@ export function CourseFormProvider({ } }; + return ( ({ label: value,