Closed shunya9811 closed 2 weeks ago
情報モデル図によると、レポートには提出物が含まれており、それぞれに個別の評価が与えられることになっていました。reportlist.xlsxを確認すると、学生ごとに評価が与えられていることがわかりました。このため、開発においては、レポートに学生が関連付けられ、学生の型定義の中に評価項目を設ける形で実装しました。
https://github.com/ChubachiPT2024/manakan/blob/main/manakan_UMLModel.drawio.svg https://app.diagrams.net/#G1S3Y9NJR5tntGv-KOgktk8JPtd7Qbc97M#%7B%22pageId%22%3A%22AsIs%E3%83%A2%E3%83%87%E3%83%AB%22%7D
useContextの部分が理解し辛いかも知れないと思っていて、以下ページを特に参考にしています。 https://blog.logrocket.com/how-to-use-react-context-typescript/#implementing-react-context-reducer-typescript
自分で自分のコードのリファクタリングをすこしやったのですが、リファクタリングする作業は別ブランチを切ってもよかったかもしれないです。
issue
ファルダをインポートするコンポーネントの実装 #75
概要
manabaからダウンロードしたファルダを選択すると、学生ごとにファイルがまとめられて、評価ページへと遷移するインポートフォームの追加
変えたこと・実装内容
ルーティング
ホームページ
評価ページ
インポート
データの作成
確認したこと
reactでExcelを扱う方法を検討しました。まずいくつかライブラリがあったので、ダウンロード数の一番多いxlsxをダウンロードしてみました。 インストール時に、脆弱性がありますと、エラー文がでたので、ついでダウンロード数の多いExcelJSをインストールしました。![スクリーンショット 2024-06-24 104255](https://github.com/ChubachiPT2024/manakan/assets/64852663/de31382c-f46c-4a33-90fd-b61effbff43f)
npm run lintでテストをおこなう箇所をsrc/以下に変更しています。
参考
ルーティング https://scrapbox.io/utakata/Electron%E3%81%A7react-router%E3%82%92%E4%BD%BF%E3%81%86%E6%99%82%E3%81%AFHashRouter%E3%82%92%E4%BD%BF%E3%81%86 https://yasuhirohoshino.com/posts/20230201_electron_maulti_window https://coconala.com/blogs/1638666/58861 https://zenn.dev/monicle/articles/react-router-v6-suspense-idiom
ExcelJs https://qiita.com/nakahara-d/items/2506f90ce8081445b509 https://www.npmjs.com/package/exceljs/v/1.8.0
useContext と useReducer https://blog.logrocket.com/how-to-use-react-context-typescript/#implementing-react-context-reducer-typescript https://reffect.co.jp/react/react-usecontext-understanding#useContext https://reffect.co.jp/react/react-hook-reducer-understanding#useReducerreduce https://github.com/Klerith/useContext-TS
useContextとrecoil https://zenn.dev/kiriyama/articles/b418d48f1b1af4
ディレクトリ構造 https://dev.to/itswillt/folder-structures-in-react-projects-3dp8 https://ryanlanciaux.com/blog/2017/08/20/a-feature-based-approach-to-react-development/ https://hello.shelfy.co.jp/76c13c6e85564653b335ec954d17da09
やりのこしていること