Feature Request: Support document.baseURI resolution
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 45/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 冷清
- 技术栈
- react, typescript
调研方向
首先阅读 Router 和 Link 的入口点,以及现有对 base 值和 hrefs 的处理。将提议的基于 document.baseURI 的相对解析与当前 ~ 行为进行比较,然后运行现有测试套件,以确定需要覆盖的路由情况。当可自定义的 document 基础路径能够一致地解析且不会破坏现有链接时,即表示完成。
由索引模型根据 Issue 内容生成。
描述
I have an application that is configured to deploy to a customizable base path (configured at runtime not build time), which is defined on the document using <base /> and accessible via document.baseURI. Because of this, ~ loses its utility and the base router's base value is tricky-at-best.
The URL class can be used to resolve these things but, at least so far, I haven't come up with a clean way to use Wouter's current functionality to support this use case. Is there a good way to do this today?
Proposed Behavior
What I would love is to be able to do something like this:
<Router base=".">{/* resolves under the hood to (new URL(document.baseURI).pathname) */}
<Link href="/bat">Bat</Link>{/* Because this is under base=".", this becomes "./bat" -> <base>/bat */}
<Link href="~/foo">Foo</Link>{/* links to <base>/foo from anywhere */}
{/* OR, if we don't want to overload the ~ semantics: */}
<Link href="./bar">Bar</Link>{/* pretty simple: new URL("./bar", document.baseURI), leaving: -> <base>/bar */}
<Link href="~/bing">Bing</Link>{/* links to /foo from anywhere as it does today */}
- 主要语言
- TypeScript
- 星标
- 7.9k
- 派生
- 193
- 平均合并
- 9 分钟
- 30 天内合并 PR
- 1
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
molefrog/wouter 的其他 Issue
-
Wouter double-decodes search params in `useSearchParams`, which can lead to �可能已有人在做 @priyas1672 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 72/100
-
难度 3/5 1-2 天 新手友好度 52/100
-
难度 3/5 1-2 天 新手友好度 45/100
-
Links using ~ do not respect `base`可能已有人在做 @molefrog 于 24 天前认领。 未关闭
难度 3/5 1-2 天 新手友好度 45/100
-
bug
难度 3/5 1-2 天 新手友好度 55/100
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 78/100
-
area:desktop area:ui bug platform:macos
难度 2/5 1-3 小时 新手友好度 67/100
anthropics/claude-code#106183 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
-
难度 1/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复
-
core: OpenRouter BYOK sessions record cost = 0 since v2.2.0 (ignores cost_details.upstream_inference_cost)可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭reproduced
难度 2/5 1-3 小时 新手友好度 72/100
anomalyco/opencode#60558 · 1 条评论 ·
维护者通常 1 天内回复