SuperAPI AI 工具集

remix-v2-routing-review

通用与其它

查看项目

更新于 10-16 08:37

技能介绍

该技能由 review-remix-v2 伞形技能加载,用于标记 app/routes/ 模块中的路由反模式,规范模式参见 remix-v2-routing。

用途:审查 Remix v2 项目的路由文件,识别命名约定违规、布局与 Outlet 缺失、资源路由形态错误以及 v1 遗留写法。

审查范围:app/routes/ 下的文件名、导出、导入与 JSX 结构;app/root.tsx 的文档外壳与根 Outlet;remix.config.js 中 routes()、ignoredRouteFiles、@remix-run/v1-route-convention 等影响路由发现的配置;以及任何链接到资源路由的模块中的 <Link> 用法。不覆盖 loader/action 数据契约、表单行为及 meta/headers。

主要检查项:索引路由应为 _index.tsx 而非 index.tsx;无路径布局用单下划线(_auth.tsx)而非双下划线(__auth/);点号子路由需有父模块或用尾部下划线跳出;父路由模块需渲染 <Outlet />;splat 段应读取 params["*"];字面点号等特殊字符用方括号转义(sitemap[.]xml.tsx);资源路由不得有 default export;指向资源路由的 <Link> 需带 reloadDocument 或用普通 <a>;路由导入应来自 @remix-run/react 而非 react-router-dom;非路由文件需与 route.tsx 同目录或列入 ignoredRouteFiles。

不应标记的合法模式:无 default export 的资源路由;无 <Outlet /> 的 _ 前缀包装布局(无对应子路由时);隐藏于 URL 的 _ 前缀文件;已接入 v1-route-convention 适配器时的 v1 文件名;params["*"] 的方括号访问;app/routes/dashboard/ 下与 route.tsx 同目录的辅助文件;存在兄弟布局时的尾部下划线跳出。

上下文相关规则与硬性门槛:写结论前需提供位置证据(路径及行号或原文引用)、说明为何不落入豁免清单、确认项目为 Remix v2,并完成审查验证协议。若 remix.config.js 已接入 v1-route-convention 适配器,则 v1 文件名属有意为之,不应标记。