meboet

Nuxt×microCMSでデータ出力後に500エラーになる

  • microCMS
  • Nuxt
2025/05/14

Nuxt.jsとmicroCMSで簡易ブログを作っているが、どうにもうまくいかない
前回はうまくいっていたのだが、今回はlocalhostで開いた後、データ出力したらすぐに500エラーになってしまう

microCMSが書いてくれている公式チュートリアルを参考にしている

エラー文

The requested module '/_nuxt/types/hoge.ts' does not provide an export named 'Hoge'

ChatGTPに聞いて色々試すもうまくいかない、、、と思っていたら、
エラー文のhogeのところがHoge2に変わる!

今回は下記にしたらうまくいった

エラーが出た
hoge.ts

import { Hoge } from "./hoge";

エラーが解消

import type { Hoge } from "./hoge";

importの後にtypeがあるかないかで500エラーになるみたい
でもなんでなのかはまだ理解できず、、TypeScriptがかなり厳格というのは聞いていたが、
そのことが原因なのかな?

ChatGPTに聞いてみたところ、
typeをつけることで型だけ使うとTypeScriptに伝えられるらしい(実行時には使わないよと伝える)
typeをつけないと実行時にJSモジュールとして読み込もうとするので、エラーが起こるとのこと

TypeScriptを理解していないとエラー解消までに途方もない時間がかかることが判明しました…

ブラウザ時に実行するかどうかを意識するといいよ〜っていってもらったので、そう意識して書いていこうと思う

変数とか関数は実行時に使うから、importの後にtypeは不要、
型の情報だけ各ページに伝えたい時はimportの後にtypeが必要