Incorrect referred documentation in fetching with Hooks
まだ誰も着手していません。
- 主要言語
- JavaScript
- スター
- 11.8k
- フォーク
- 7.9k
- 平均マージ
- 1日 11時間
- マージ済み PR(30日)
- 11
説明
The provided documentation is not accurate because it refers to an article that is not correct based on the eslint(react-hooks/exhaustive-deps) rules.
https://reactjs.org/docs/hooks-faq.html#how-can-i-do-data-fetching-with-hooks
Documentation quote:
"How can I do data fetching with Hooks?
Here is a small demo to get you started. To learn more, check out this article about data fetching with Hooks."
Referred Article's URL: https://www.robinwieruch.de/react-hooks-fetch-data
In the provided example we have:
useEffect(async () => {
const result = await axios(
'https://hn.algolia.com/api/v1/search?query=redux',
);
setData(result.data);
}, []);
but the rule from eslint(react-hooks/exhaustive-deps) says:
Effect callbacks are synchronous to prevent race conditions. Put the async function inside:
useEffect(() => {
async function fetchData() {
// You can await here
const response = await MyAPI.getData(someId);
// ...
}
fetchData();
}, [someId]); // Or [] if effect doesn't need props or state
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
Hooks FAQページから始め、リンク先のデータ取得に関する記事を確認してから、その useEffect の例を issue に引用されている eslint(react-hooks/exhaustive-deps) のガイダンスと比較します。ドキュメントが読者を不正確なガイダンスに誘導しなくなり、データ取得の例が記載されたルールと一致すれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript, react
- 領域
- documentation
- issue の種類
- ドキュメント
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 45/100