とある開発でVue.jsのSPAで作られた管理画面機能を修正しているのですが、その際に InternalError: too much recursion
というエラーに遭遇しました。
突き詰めた結果、axiosが原因だと判明する
私の書いたコードには再帰に該当しそうな処理が一切見当たらなかったため、わりと途方に暮れてました。
そのため、数行ずつコメントアウトしながらデバッグしてどの行でエラーが起きるのか調べていたのですが、最終的に axios.get
をコメントアウトすると起きないことが判明します。
同じような事例に行き当たる
ググってみると『(vue) Uncaught InternalError: too much recursion: failed to use axios』という、気になる事例の記事にたどり着きました。
さいごに
先週末に遭遇し、現時点ではエラーが解消していないのですが、 axios.get
でAPIコールするだけで InternalError: too much recursion
が発生する理由は気になります。
来週も引き続き調査したいと思いますが、ちなみに数年前に作られた管理画面でaxiosのバージョンも古いため、もしかしたら現在のaxiosでは解消されているかもしれません。 この記事を書いてて思ったのですが、こういうケースの場合、まずはライブラリのリリースノートを見るのが良いかもしれない。