reactjs / reactjs/react.dev

It may allow beginners to taste the sweetness of not following the rules

未关闭
#8,230 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

type: documentation
主要语言
JavaScript
星标
11.8k
派生
7.9k
平均合并
1 天 11 小时
30 天内合并 PR
11

描述

Summary

https://react.dev/learn/queueing-a-series-of-state-updates

The first challenge in this chapter can still work normally even if it is written like this, because it relies on click behavior

async function handleClick() {
    setPending(pending + 1);
    await delay(3000);
    setPending(pending=>pending - 1);
    setCompleted(completed=>completed + 1);
  }

However, if it is changed to this, it will not work. At this point, we must change setPending(pending + 1) to setPending(pending => pending + 1)

async function handleClick() {
    setTimeout(()=> {setPending(pending + 1);}, 1000)
    await delay(3000);
    setPending(pending=>pending - 1);
    setCompleted(completed=>completed + 1);
  }
Page

https://react.dev/learn/queueing-a-series-of-state-updates

Details

Perhaps some annotations could be added

贡献指南

打开贡献指南

从这里开始

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

调研方向

从链接的 queueing-a-series-of-state-updates 页面开始,检查第一个挑战及其 state update 示例。重现 issue 中描述的延迟 setTimeout 变体,然后确定应在哪里添加注释来解释 functional updater 形式。当页面明确警告这种情况,并且挑战仍然易于理解时,即表示完成。

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

评估

技术栈
javascript, react
领域
documentation
Issue 类型
文档
难度
2/5
预计耗时
1-3 小时
活跃度
停滞
描述清晰度
基本清楚
新手友好度
45/100

把新 issue 发到你的邮箱

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