🦄

非同期通信化できない

2023/07/05に公開

🍍今回の悩み

いいね機能とコメント機能を非同期通信化したい。
とりあえず、書かなければいけないコードは記述し終えたと思っている。
けど、『いいね』を押しても反応せずrenderもコメントアウトしているので画面を更新しないと『いいね』されなくなってしまった;o;

renderの記述を復活させると非同期通信化する前の動作は通常通り行えている。

🍍解決方法

非同期通信のどこで引っかかってしまって正常に動作が行えていないのか確認をする。

Processing by ~ as〇〇を確認!


ターミナルを見てみると「Processing by ~ as JS」と書いてある部分がある。

今までの同期通信の場合は、HTML形式でリクエストを送っているので「Processing by ~ as HTML」と表記されていたが、今回の非同期通信はJavaScript形式でリクエストを送っているので「Processing by ~ as JS」と表記が変化する。

このことより、非同期通信の実装の準備はできていることがわかる

じゃあどこがダメなんだ?エラー表示も出ないし、、、。

非同期通信ではエラー画面が表示されず、代わりにターミナルに出力されることが多い

え??まじ??
試しにターミナルを確認してみたら

ア!いました

確認したところ、bookのmethodがうまくいっておらずコントローラーの修正とcreate.js.erbファイルの修正を行いました!

🍍まとめ

今回は、非同期通信化を行いました。
いいね、フォロー機能それぞれやったのですが事前に同期通信で動作がうまくいっていればそのあとで発生するエラーは、私の場合記述ミスでした。

とにかく、今回のようなエラーが発生した場合は

未来の私

Discussion