Show the weekdays-only notice after an in-place weekend redirect

未关闭 适合新手
#463 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
78/100
Issue 类型
缺陷
描述清晰度
描述清楚
活跃度
活跃
技术栈
react, typescript
领域
frontend, testing

调研方向

从 TaskFlow.Web/src/pages/JournalPage.tsx 开始,查看 notificationMsg 的初始化方式,以及 weekendRedirect 和 focusTaskId 的处理方式。然后找到 JournalPage 的 Vitest 测试,覆盖四项验收标准,包括关闭通知和仅清除重定向标志。四种行为全部通过测试后即完成。

由索引模型根据 Issue 内容生成。

描述

Follow-up to #404 (merged in #462). Found during that run. Not groomed. Web only.

Problem

/journal/:date redirects a weekend date to the previous Friday when "weekdays only" is on. The redirect is in-place (navigate(..., { replace: true, state: { weekendRedirect: true } }) in TaskFlow.Web/src/pages/JournalPage.tsx), so JournalPage stays mounted. The notice "Weekdays only — redirected to Friday" is read once, in the initial value of useState (notificationMsg), so it does not appear after an in-place redirect. It appears only when the page mounts directly on Friday with weekendRedirect state (for example after a refresh).

Reproduce: turn weekdays-only on, open the journal on a weekday, then navigate to a Saturday (a link, the URL, or the date shortcuts). The page lands on Friday with no notice.

This is not caused by #404, which only made the redirect keep other one-shot state. The user is moved to another day with no explanation.

Change

Show the notice whenever the location carries weekendRedirect, including after an in-place redirect, and keep it dismissible as it is today. Keep clearing the flag so a later refresh does not repeat it, but do not drop other one-shot state (focusTaskId, see docs/FRONTEND.md "Origin state and back link").

Acceptance criteria

  1. An in-place weekend redirect shows "Weekdays only — redirected to Friday".
  2. Mounting directly on Friday with weekendRedirect state still shows it, once.
  3. A later refresh or revisit does not show it again.
  4. A redirect that carries focusTaskId still returns focus to the row (the #404 behavior).
  5. Vitest tests for 1 to 4.

Out of scope

  • Changing the weekdays-only rule or the redirect target.
主要语言
C#
星标
1
派生
0
平均合并
2 小时 2 分钟
30 天内合并 PR
98

环境准备

  • 提供 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

nevridge/TaskFlow 的其他 Issue

查看 nevridge/TaskFlow 的全部 Issue

相似的 Issue

更多 C# Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。