こちらのリポジトリ は、こちらのリポジトリ の続きの課題です。
ソースをコピーして、すでに作成したソースを元に課題を進めてください。
こちら課題では実際にGithub REST APIを使用して、自身のリポジトリ のissueのCRUDを行えるようにしていきます。
こちらをAccess Tokenの関係でGithubPagesではなくNetlifyにデプロイして公開しています。 実装の際の参考にしてください。
デモ: https://vw-redux-saga-github-viewer.netlify.app/
- Reduxでの状態管理
- React Routerでのページ設定とページ遷移
- Eslint + Prettier
- HTTPリクエスト/レスポンスの仕組み
- AjaxでのHTTPリクエストの実装
- Promise, Async, Await
フォークでなく個人のアカウントにリポジトリ を作成してください。 redux-github-viewerのソースを元にリポジトリを作成ください
最後のコードレビューはプルリクエストベースでレビューを行うのでmasterブランチから developブランチを切って課題を進めて頂くようお願いします。
最終的に完成したところでプルリクエストを作成してレビュー依頼をお願いします。
-
Pull Reqeustページは仮置きしているのでデモのようにタイトルだけ書いたページを置いておいてください。
-
一箇所で長時間はまってしまった場合は別の機能を実装するか質問するようお願いします。
- リポジトリの作成(redux-github-viewerからソースをコピー)
- yarnでのパッケージインストール
- react-notifyのインストール
- axiosのインストール
- issueページの実装
- issue一覧の取得
- issueの作成
- issueの更新
- issueの削除(削除するAPIはないのでissueをクローズする)
- リクエスト成功時のトーストの表示
- リクエスト失敗時のトーストの表示
- レスポンシブ
- プロフィールページの実装
- ユーザ情報のAPI経由での取得
- フォロー数等々ユーザ情報の表示
- レスポンシブ
下記記事を参考にNetlifyでアプリを公開してください。
package.jsonにhomepageのキーが設定されているとうまくいかないので注意してください。
react-notifyというライブラリをつかってサイト内のトーストは実行しています。 作成・更新成功時と失敗時でそれぞれトーストを出して通知するようにしてください。
失敗時の挙動はdeveloperツールを使って一時的にネットワークをオフラインにすることで確認することができます。
Github APIの仕様でissueの削除はできないようです。 issueをcloseステータスに更新する形で実装してください。