toma3desuyo
@toma3desuyo

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

Reactアプリがデプロイによって反映されない

Q&A

Closed

Reactで英単語帳を自分で作れるアプリを作っています。
FirebaseHostingを用いてデプロイしてみたところデプロイ先では何も反映されておらず真っ白な画面になっていました。ソースコードとWebページのURLは下記のリンクで記載しています。どなたかお力をかしていただきたいです。ローカル環境では動作しているためデプロイの段階で何か間違えているんだと思います。

ソースコード: https://github.com/toma3desuyo/word_memorize.git
URL: https://word-memorize-ff102.web.app

0

1Answer

Comments

  1. @toma3desuyo

    Questioner

    コメントありがとうございます。今確認してきてみます

  2. @toma3desuyo

    Questioner

    私も同じ操作をしてみたところ確かにWebページが反映されていました!具体的にはどのようにコードを修正すればnullが返されることを防げますか?

  3. こんな感じで userCards が存在してるときにだけセットするようにすれば防げるのではないでしょうか?

        if (userCards) {
          const userCardsArray = JSON.parse(userCards);
          userCardsArray.map((card) => (card.buttonText = "日本語を表示"));
          setCards(userCardsArray);
          localStorage.setItem("cards", JSON.stringify(userCardsArray));
        }
    

    あとはWordTest.jsx にも同じ記述があるので修正の必要があるかもしれません。
    https://github.com/toma3desuyo/word_memorize/blob/main/src/WordTest.jsx#L8

    propsで受け取ったcardsをそのままスプレッド構文で展開すればWordTest.jsxでデータを取得する処理はそもそも不要な気がするのですが、いかがでしょうか?

    const shuffledArray = [...cards];
    
  4. @toma3desuyo

    Questioner

    貴重なお時間を割いてアドバイスいただきありがとうございます。只今からソースコードの変更をおこなってきます。

  5. @toma3desuyo

    Questioner

    今修正自分なりにしてみてデプロイとGithubの更新も行ったのですがまだ同じような状態です。どこか解釈が間違えていますでしょうか?(localStorageからの再取得は復習テストを終わったタイミングでもとのUserのカードを並び順も含めてリセットしたいため実装しています)

  6. @toma3desuyo

    Questioner

    ご指摘ありがとうございます。そこは完全にタイポしておりました!ただいま修正しましたが、どうやらまだ先ほどと同じページの表示になってしまっています。もう一度GitHubのコードをご確認していただけますか?

  7. @toma3desuyo

    Questioner

    すみません。私のミスでbuildディレクトリを更新するのを忘れたままデプロイしていました! 全て解決しました本当にありがとうございました!

  8. 解決したのであれば、クローズするといいですよ。

  9. @toma3desuyo

    Questioner

    jinbeiさん、コメントありがとうございます😊始めてQiitaを使っているのでとても助かります。

Your answer might help someone💌