Dropped routes with "convert routes"
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 25/100
- Issue 类型
- 缺陷
- 描述清晰度
- 需要澄清
- 活跃度
- 停滞
- 技术栈
- typescript
调研方向
使用转换前后的路由树复现 "Convert routes to v2 convention" 命令,并将其结果与 npx remix routes 进行比较。首先跟踪哪些路由条目和文件被删除或重命名,尤其是嵌套的 assessment 和 bulk-import 路径。完成的标准是转换保留全部 47 个文件,并生成预期的 v2 路由结构,且不存在格式错误的路径。
由索引模型根据 Issue 内容生成。
描述
What I did
I ran "Convert routes to v2 convention" from on a directory that looked like this
tree routes before: 19 directories, 47 files
routes/
├── __anonymous
│ ├── change-password.tsx
│ ├── forgot-password.tsx
│ ├── login.tsx
│ ├── logout.tsx
│ └── webhooks.ld-update.tsx
├── __anonymous.health.tsx
├── __anonymous.tsx
├── index.tsx
├── participant
│ ├── sessions
│ │ ├── $courseId
│ │ │ └── assessments
│ │ │ ├── $evaluationId
│ │ │ │ ├── index.tsx
│ │ │ │ └── result.tsx
│ │ │ ├── index.tsx
│ │ │ └── new.tsx
│ │ ├── $courseId.tsx
│ │ └── index.tsx
│ └── sessions.tsx
├── sessions
│ ├── $courseId
│ │ ├── assessments
│ │ │ ├── $assessmentType.$assessmentId
│ │ │ │ ├── $evaluationTemplateId
│ │ │ │ │ ├── evaluate.$participantId.tsx
│ │ │ │ │ ├── index.tsx
│ │ │ │ │ └── response-breakdown.tsx
│ │ │ │ ├── index.tsx
│ │ │ │ └── response-breakdown.tsx
│ │ │ ├── $assessmentType.$assessmentId.tsx
│ │ │ ├── $evaluationId.tsx
│ │ │ ├── components
│ │ │ │ └── AssessmentList.tsx
│ │ │ ├── index.tsx
│ │ │ └── types.ts
│ │ ├── facilitators
│ │ │ └── update.tsx
│ │ ├── participants
│ │ │ ├── index.tsx
│ │ │ ├── results.$participantId.tsx
│ │ │ ├── signin-info
│ │ │ │ ├── index.tsx
│ │ │ │ └── pdf.tsx
│ │ │ └── update.tsx
│ │ ├── participants.tsx
│ │ └── summary
│ │ └── index.tsx
│ ├── $courseId.tsx
│ ├── components.tsx
│ ├── create.tsx
│ └── index.tsx
└── users
├── $userId.change-password.tsx
├── $userId.edit.tsx
├── bulk-import
│ ├── csv.ts
│ ├── facility.tsx
│ ├── index.tsx
│ ├── upload.tsx
│ └── validation-preview.tsx
├── bulk-import.tsx
├── create.tsx
└── index.tsx
19 directories, 47 files
npx remix routes before
<Routes>
<Route file="root.tsx">
<Route path="users/:userId/change-password" file="routes/users/$userId.change-password.tsx" />
<Route path="participant/sessions" file="routes/participant/sessions.tsx">
<Route path=":courseId" file="routes/participant/sessions/$courseId.tsx">
<Route path="assessments/:evaluationId/result" file="routes/participant/sessions/$courseId/assessments/$evaluationId/result.tsx" />
<Route path="assessments/:evaluationId" index file="routes/participant/sessions/$courseId/assessments/$evaluationId/index.tsx" />
<Route path="assessments" index file="routes/participant/sessions/$courseId/assessments/index.tsx" />
<Route path="assessments/new" file="routes/participant/sessions/$courseId/assessments/new.tsx" />
</Route>
<Route index file="routes/participant/sessions/index.tsx" />
</Route>
<Route path="health" file="routes/__anonymous.health.tsx" />
<Route path="sessions/:courseId" file="routes/sessions/$courseId.tsx">
<Route path="assessments/:assessmentType/:assessmentId" file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId.tsx">
<Route path=":evaluationTemplateId/evaluate/:participantId" file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId/$evaluationTemplateId/evaluate.$participantId.tsx" />
<Route path=":evaluationTemplateId/response-breakdown" file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId/$evaluationTemplateId/response-breakdown.tsx" />
<Route path=":evaluationTemplateId" index file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId/$evaluationTemplateId/index.tsx" />
<Route path="response-breakdown" file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId/response-breakdown.tsx" />
<Route index file="routes/sessions/$courseId/assessments/$assessmentType.$assessmentId/index.tsx" />
</Route>
<Route path="assessments/:evaluationId" file="routes/sessions/$courseId/assessments/$evaluationId.tsx" />
<Route path="facilitators/update" file="routes/sessions/$courseId/facilitators/update.tsx" />
<Route path="assessments" index file="routes/sessions/$courseId/assessments/index.tsx" />
<Route path="summary" index file="routes/sessions/$courseId/summary/index.tsx" />
<Route path="participants" file="routes/sessions/$courseId/participants.tsx">
<Route path="results/:participantId" file="routes/sessions/$courseId/participants/results.$participantId.tsx" />
<Route path="signin-info" index file="routes/sessions/$courseId/participants/signin-info/index.tsx" />
<Route path="signin-info/pdf" file="routes/sessions/$courseId/participants/signin-info/pdf.tsx" />
<Route path="update" file="routes/sessions/$courseId/participants/update.tsx" />
<Route index file="routes/sessions/$courseId/participants/index.tsx" />
</Route>
</Route>
<Route path="users/:userId/edit" file="routes/users/$userId.edit.tsx" />
<Route path="users/bulk-import" file="routes/users/bulk-import.tsx">
<Route path="validation-preview" file="routes/users/bulk-import/validation-preview.tsx" />
<Route path="facility" file="routes/users/bulk-import/facility.tsx" />
<Route path="upload" file="routes/users/bulk-import/upload.tsx" />
<Route index file="routes/users/bulk-import/index.tsx" />
<Route path="csv" file="routes/users/bulk-import/csv.ts" />
</Route>
<Route path="sessions/create" file="routes/sessions/create.tsx" />
<Route path="sessions" index file="routes/sessions/index.tsx" />
<Route path="users/create" file="routes/users/create.tsx" />
<Route file="routes/__anonymous.tsx">
<Route path="webhooks/ld-update" file="routes/__anonymous/webhooks.ld-update.tsx" />
<Route path="change-password" file="routes/__anonymous/change-password.tsx" />
<Route path="forgot-password" file="routes/__anonymous/forgot-password.tsx" />
<Route path="logout" file="routes/__anonymous/logout.tsx" />
<Route path="login" file="routes/__anonymous/login.tsx" />
</Route>
<Route path="users" index file="routes/users/index.tsx" />
<Route index file="routes/index.tsx" />
</Route>
</Routes>
What I observed
It said it succeeded but it lost a lot of files
tree routes after: 1 directory, 19 files
routes/
├── _anonymous..login.md
├── _anonymous.change-password.tsx
├── _anonymous.forgot-password.tsx
├── _anonymous.health.tsx
├── _anonymous.login.tsx
├── _anonymous.logout.tsx
├── _anonymous.tsx
├── _anonymous.webhooks.ld-update.tsx
├── _index.tsx
├── participant.sessions.tsx
├── sessions.$courseId.tsx
├── sessions._index.tsx
├── sessions.components.tsx
├── sessions.create.tsx
├── users.$userId.change-password.tsx
├── users.$userId.edit.tsx
├── users._index.tsx
├── users.bulk-import.tsx
└── users.create.tsx
1 directory, 19 files
npx remix routes after
<Routes>
<Route file="root.tsx">
<Route path="_anonymous/webhooks/ld-update" file="routes/_anonymous.webhooks.ld-update.tsx" />
<Route path="users/:userId/change-password" file="routes/users.$userId.change-password.tsx" />
<Route path="_anonymous/change-password" file="routes/_anonymous.change-password.tsx" />
<Route path="_anonymous/forgot-password" file="routes/_anonymous.forgot-password.tsx" />
<Route path="participant/sessions" file="routes/participant.sessions.tsx" />
<Route path="sessions/components" file="routes/sessions.components.tsx" />
<Route path="sessions/:courseId" file="routes/sessions.$courseId.tsx" />
<Route path="users/:userId/edit" file="routes/users.$userId.edit.tsx" />
<Route path="_anonymous//login" file="routes/_anonymous..login.md" />
<Route path="_anonymous/health" file="routes/_anonymous.health.tsx" />
<Route path="_anonymous/logout" file="routes/_anonymous.logout.tsx" />
<Route path="users/bulk-import" file="routes/users.bulk-import.tsx" />
<Route path="_anonymous/login" file="routes/_anonymous.login.tsx" />
<Route path="sessions/_index" file="routes/sessions._index.tsx" />
<Route path="sessions/create" file="routes/sessions.create.tsx" />
<Route path="users/_index" file="routes/users._index.tsx" />
<Route path="users/create" file="routes/users.create.tsx" />
<Route path="_anonymous" file="routes/_anonymous.tsx" />
<Route path="_index" file="routes/_index.tsx" />
</Route>
</Routes>
It's not clear to me what the issue is, but hopefully the before/after routes will help. Let me know if I can do any thing to give more data or context.
- 主要语言
- TypeScript
- 星标
- 89
- 派生
- 7
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
code-forge-io/Remix-Forge 的其他 Issue
-
难度 5/5 一周以上 新手友好度 15/100
code-forge-io/Remix-Forge#26 ·
-
难度 4/5 3-5 天 新手友好度 25/100
code-forge-io/Remix-Forge#25 · 2 条评论 · 1 个 reaction ·
-
难度 4/5 3-5 天 新手友好度 35/100
code-forge-io/Remix-Forge#24 · 3 条评论 ·
-
难度 5/5 一周以上 新手友好度 25/100
code-forge-io/Remix-Forge#22 · 1 条评论 · 1 个 reaction ·
-
难度 4/5 3-5 天 新手友好度 28/100
code-forge-io/Remix-Forge#19 · 5 条评论 ·
查看 code-forge-io/Remix-Forge 的全部 Issue
相似的 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 68/100
langchain-ai/langchainjs#12239 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 88/100
paperclipai/paperclip#21837 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 73/100
code-yeongyu/senpi#6813 ·
维护者通常 1 天内回复
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
难度 1/5 1 小时以内 新手友好度 93/100
lingdojo/kana-dojo#34169 · 1 条评论 · 5 个 reaction ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100