Closed keita7777 closed 2 weeks ago
uploadImageは「app/api/blog/route.ts」内のPOST内に記述した方が、私はいいのかなと思います。 その他は全体的に素晴らしい出来だと思います。
ただ、1点だけ気になる箇所がありましたので、ご確認いただけますでしょうか。
components/ArticleCreate/index.tsx
の以下のコード部分です。
const fullPath = await uploadImage(imagePath);
createBlog(title, content, fullPath);
router.push("/");
createBlog
にも await
を入れた方がよいのかと考えました。await
を入れない場合、createBlog
の処理が完了する前に router.push
が先に実行される可能性があるのではないかと思いました。
もし大丈夫でしたら、失礼いたしました。
uploadImageは「app/api/blog/route.ts」内のPOST内に記述した方が、私はいいのかなと思います。 その他は全体的に素晴らしい出来だと思います。
ただ、1点だけ気になる箇所がありましたので、ご確認いただけますでしょうか。
components/ArticleCreate/index.tsx
の以下のコード部分です。const fullPath = await uploadImage(imagePath); createBlog(title, content, fullPath); router.push("/");
createBlog
にもawait
を入れた方がよいのかと考えました。await
を入れない場合、createBlog
の処理が完了する前にrouter.push
が先に実行される可能性があるのではないかと思いました。もし大丈夫でしたら、失礼いたしました。
uploadImageを「app/api/blog/route.ts」内のPOST内に記述しようとしましたがうまく実装できませんでした。。。このようにしたほうが良いかも含めてシナガワさんに相談してみます
コンフリクが発生していますので、修正お願いします。
.env.exampe ファイルに環境変数名の追加もよろしくお願いいたします。
close #49
やったこと・変更内容(ビューの変更がある場合はスクショによる比較などがあるとわかりやすい )
react-hook-formで投稿フォームの状態を管理
タイトル、画像、記事内容の入力は必須、未入力の場合エラーテキストを表示
loadgingは別のタスクで作成したほうが良いと思い作成していない
以下のコマンドでSupabaseからデータベースの型定義を取得、typeフォルダに格納
npx supabase gen types typescript --project-id mjpiymqijkcwavtgjssq > database.types.ts
【開発用】POSTする際「user_id」「category_id」は固定でデータを挿入、ユーザー・カテゴリの作成処理ができ次第修正予定
画像をSupabaseのStorageに保存する際、ファイル名が重複しないようにtimestampをファイル名に入れるようにしている
フォーム送信中はフォームを非活性にした
バグ
npm run lint実施すると以下のエラー発生、[FE]画像プレビュー機能実装時点で発生している可能性あり、いったんこちらでは修正していない
画像を選択した状態で再度「Upload Image」 をクリックし、表示されるファイル選択ウインドウでキャンセルをクリックすると、画像は表示されたままだが、useFormのエラーメッセージが表示され画像inputは空の状態になってしまう。 inputの状態をuseStateとuseFormの両方で管理しているためのバグだと思われる。本タスクで修正するべきだが、別のissue作成してそこで対応させてほしい。
レビュー観点(レビューをする際に見てほしい点など)
Supabaseの初期化の記述について、ヨシダさんと統一させようと思ったがどういう記述が良いのか判断できなかった。記述内容、配置場所についてアドバイスいただきたい
エラーハンドリングは問題ないか
utils/supabase/uploadImage.ts」内のuploadImageは、「app/api/blog/route.ts」内のPOST内に記述するべきか →やろうと思ったがうまく実装できなかった、File形式のデータをPOSTメソッドに渡せない??
画像プレビュー機能とuseFormによる状態管理を共存させるために試行錯誤した。InputImageコンポーネントの書き方も見ていただきたい。
Supabaseのデータベースを「RLS disabled」にしてしまった。ルールをちゃんと設定するべきか。