Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

useState の "Storing information from previous renders" 節の訳の改善 #813

Merged
merged 2 commits into from
Dec 19, 2024

Conversation

honey32
Copy link
Contributor

@honey32 honey32 commented Dec 17, 2024

英語原文

Note that if you call a set function while rendering, it must be inside a condition like prevCount !== count, and there must be a call like setPrevCount(count) inside of the condition.

これを逐語的に

  • Note that
    • (if you call a set function while rendering)
  • it must be inside a condition like prevCount !== count
    • it : レンダー中の set 関数の呼び出し
  • and there must be a call like setPrevCount(count) inside of the condition.
    • the condition: prevCount !== count の if 文の then 節

のように分割して訳しました。

元の訳文だと、"must" のニュアンスが抜け落ちてしまっていて、節と節のつながりも少し分かりづらい気がしたので、感覚で言い回し見直した次第です。

  • 「~が必要である」(元の訳)
    • まわりでは "need" とか "should" の訳として出てくる語
    • ここは文脈的にかなり厳しいことを言っているはずだが、それに比べて弱い印象
  • 「~が無ければならない」
    • 「あるべき」なのか「ないべき」なのかの読み取りに「無」という漢字が邪魔しそう…?考えすぎ?
  • 「~書かれなければならない」
    • "there must be" に対して意訳しすぎ…?でも上記の問題が少ないので採用した

のどれが must の訳としてふさわしいか分からない…


ついでに、「条件節」を「条件文」になおしました。

「条件節」という用語は、英文法だと "if A, B" のうち A の部分を指すので、 今回必要な B を指す condition の訳語としては「条件文」がふさわしいと考えたためです。

(then 節と呼ぶのが個人的には好きですが、JS だと then と書かないので、この文書内ではふさわしくなさそう…)

一応、同ページ含め各種フックのページで、 B のことを原文で condition と呼び、日本語では「条件文」と訳している箇所を見つけたので、それに揃えてみました。

https://github.com/reactjs/react.dev/blob/e2bba41bf0f4913b7faaeff4920ec4eb98207a66/src/content/reference/react/useState.md?plain=1#L53

* `useState` はフックであるため、**コンポーネントのトップレベル**またはカスタムフック内でのみ呼び出すことができます。ループや条件文の中で呼び出すことはできません。これが必要な場合は、新しいコンポーネントを抽出し、state を移動させてください。

検索結果:

https://github.com/search?q=repo%3Areactjs%2Fja.react.dev%20%E6%9D%A1%E4%BB%B6%E6%96%87&type=code

Copy link

vercel bot commented Dec 17, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

1 Skipped Deployment
Name Status Preview Comments Updated (UTC)
legacy-ja-reactjs-org ⬜️ Ignored (Inspect) Visit Preview Dec 17, 2024 1:45pm

Copy link

Size changes

📦 Next.js Bundle Analysis for react-dev

This analysis was generated by the Next.js Bundle Analysis action. 🤖

This PR introduced no changes to the JavaScript bundle! 🙌

@smikitky
Copy link
Member

ゼロから書くなら「条件分岐」と書くと思うので、「節」は機械翻訳で出てきたのをスルーしたのかもしれません。ありがとうございました。

@smikitky smikitky merged commit 3520526 into reactjs:main Dec 19, 2024
5 checks passed
@honey32 honey32 deleted the 24-1217-useState-expression branch December 21, 2024 11:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants