Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

refactor(路由管理): 优化路由添加逻辑,增强路径处理和顶级路由注册 #2123

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
pixelmaxQm merged 1 commit into flipped-aurora:dev-286 from Azir-11:dev-286
Oct 14, 2025

Conversation

@Azir-11
Copy link
Member

@Azir-11 Azir-11 commented Oct 14, 2025

优化后目前完整的处理逻辑大致是:

  • 跳过外链节点:

    • 如果 path、name、component 任一为外链(以 http/https 开头),该节点及其子树不参与路由注册。
  • layout 节点:

    • layout 自身不参与路径拼接,也不作为可访问页面注册;
    • 仅递归处理其 children。
  • defaultMenu 节点:

    • 条件:菜单项 meta.defaultMenu === true,且当前不位于其它父路由(即不在另一个 defaultMenu 子树中提升)。
    • 行为:
      • 将该节点作为"顶级路由"注册(不被 layout 包裹);
      • 路径为"绝对路径",由祖先路径片段 + 自身 path 拼接后规范化(比如:/system/user);
      • 该节点的子页面,作为它的"二级子路由"注册(不挂在 layout 下)。
  • 普通节点:

    • 如果还有子节点:继续向下收集路径片段,直到叶子;
    • 如果是叶子节点:
      • 若当前位于某个 defaultMenu 顶级之下,则作为该顶级的二级子路由注册;
      • 否则作为 layout 的二级子路由注册。

额外:除了支持当前的 layout 布局,顶级页面布局,本次更新还增加了对嵌套的 defaultMenu 的支持,defaultMenu 下如果有其他的页面组件,那么它会被塞到父级的 defaultMenu 那里去,以 defaultMenu 作为它的 layout

@pixelmaxQm pixelmaxQm merged commit d0829fb into flipped-aurora:dev-286 Oct 14, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /