TraceStudio-dev/docs/web/web_structure.md
Boshuang Zhao 5790ec164f add web v2
2026-01-10 19:08:49 +08:00

4.2 KiB
Raw Blame History

Web 前端结构说明

本文件记录 web/ 目录下的主要文件与子目录,并对每个文件/目录给出简短职责说明,便于快速理解前端代码组织与接口契约。

说明:请在对前端结构进行修改或新增文件时同步更新本文件。


顶层文件

  • index.html — Vite 应用入口 HTML 模板,挂载 React 根节点和必要 meta/脚本。
  • package.json — 前端依赖与 npm 脚本配置(devbuildpreview 等)。
  • vite.config.ts — Vite 构建与开发服务器配置(别名、环境变量、插件)。
  • tsconfig.json / tsconfig.app.json / tsconfig.node.json — TypeScript 编译配置与项目范围划分。
  • postcss.config.cjs / tailwind.config.cjs — CSS/ Tailwind 配置。
  • README.md / SETUP.md — 前端开发与启动说明。

目录public

  • public/ — 静态资源文件夹,直接由 Vite 拷贝到输出目录favicon、静态图片等

目录src

  • src/main.tsx — 应用入口文件,初始化 i18n、state provider并挂载 App
  • src/App.tsx — 顶层 React 组件,通常负责路由或全局布局占位。
  • src/i18n.ts — 国际化初始化与语言资源配置。
  • src/index.css / src/App.css — 全局样式与组件级样式入口Tailwind/CSS 组合)。

子目录assets

  • src/assets/ — 图片、图标及其他静态前端资源。

子目录components

  • src/components/AppShell.tsx — 应用主壳,组合 HeaderBar、侧边栏、画布和 Inspector
  • src/components/HeaderBar.tsx — 顶部控制栏,包含 Run/Save、用户/环境切换等操作入口。
  • src/components/BreadcrumbNav.tsx — 面包屑导航组件,用于目录/文件路径导航。
  • src/components/NodePalette.tsx — 节点库面板,显示可用节点并实现拖拽到画布。
  • src/components/FileExplorer.tsx — 文件资源管理器,支持文件操作与拖拽到画布。
  • src/components/FileViewer.tsx — 文件内容预览与编辑模态。
  • src/components/Inspector.tsx — 右侧参数面板,展示所选节点的参数与预览。
  • src/components/CustomNodeEditor.tsx — 自定义节点编辑器,编辑 Python 自定义节点元数据并与后端交互。
  • src/components/Workspace.tsx — 中央画布容器React Flow 封装),处理节点渲染、连线、交互与缩放。
  • src/components/SettingsModal.tsx — 系统设置弹窗,管理 API 地址与运行时选项。

子目录components/nodes

  • src/components/nodes/UniversalNode.tsx — 通用节点渲染组件负责节点头部、handles、参数摘要与状态灯。

子目录components/graph

  • src/components/graph/GraphCanvas.tsx — 画布渲染组件(迁移目标),仅负责 React Flow 渲染与低层事件转发。
  • src/components/graph/GraphControls.tsx — 画布控制按钮(缩放/视图重置等)。

子目录components/_layouts

  • src/components/_layouts/PanelContainer.tsx — 侧边栏/面板容器通用布局组件。

子目录hooks

  • src/hooks/useCanvasDrop.ts — 处理拖拽到画布的 DataTransfer解析并调用 store 的 addNodeFromSchema

子目录stores

  • src/stores/ — 状态管理目录(可能包含 Zustand/Redux store管理节点集合、选择状态与界面首级数据。

子目录utils

  • src/utils/api.ts — 所有后端 API 调用的封装函数(例如构造 graph/execute payload 的辅助函数)。
  • src/utils/ — 其他工具函数集合(格式化、解析等)。

子目录components/request

  • src/components/request/graphRequest.ts — 将前端的 nodes/edges/globalSettings 转换为后端 /api/graph/execute 所需的 payload 的适配器函数。

目录tests

  • web/tests/TEST_INTEGRATION.js — 前端集成测试(占位/示例),用于验证关键 UI 交互或端到端路径。

维护建议

  • 在每次对 src/components 做结构性变动时,同时更新本文件与 docs/web/components_structure.md
  • storescore/model 提供清晰的类型定义文件,便于组件与服务之间的契约校验。

文档生成时间: 2026-01-10 生成者: Copilot自动化脚本