0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

「Module not found」でハマったあなたへ。Next.jsでエイリアスが効かない原因と解決法

Posted at

🚨 突然の「Module not found」…それ、ちゃんと設定できてますか?

Next.jsで開発中、ファイルをインポートしようとしたら突如現れるこのエラー。

Module not found: Can't resolve '@/lib/profile'

エンジニアなら一度は見たことがあるこのエラーメッセージ。
「なんでだよ!ファイルはあるじゃん!」と、心の中で叫んだ経験がある方も多いはず。

この記事では、このエラーの本当の原因と、初心者でも5分でできる解決方法を丁寧に解説します。

📌 対象読者:

  • Next.jsやReactを学習中の方
  • エイリアスの設定に慣れていない方
  • 「なんかよくわからないけどエラー出た」状態の方

🔍 エラーメッセージの正体を読み解く

まずはエラーメッセージをもう一度見てみましょう。

Module not found: Can't resolve '@/lib/profile'

これは端的に言うと、こういうことです:

@/lib/profile ってパスにファイルがあると思ったけど、見つからないよ!」

ファイルがないか、パスの書き方がおかしいか、
あるいは**「@」の意味をNext.jsが理解できていない**可能性があります。


💡 よくある原因3選(ここでだいたい解決します)

✅ 原因1:ファイルが存在しない/パスが間違ってる

  • src/lib/profile.ts は本当にありますか?
  • ファイル名が Profile.tsx になっていませんか?(大文字・小文字に注意!)
  • 拡張子が .js.ts.tsx で間違っていないか確認しましょう。

👀 ファイル名のスペルミスは、思った以上に多い原因です。


✅ 原因2:「@」エイリアスが未設定

@/lib/profile のように「@」を使ってパスを短く書くには、
設定ファイルにエイリアスの定義 が必要です。

これがないと、Next.jsは「@ってどこ?」と困ってしまいます。


✅ 原因3:設定はしたけどVSCodeや開発サーバーが古いまま

設定を変更しても、VSCodeや開発サーバーが変更を反映していないことがあります。
設定後は以下を実行しましょう:

  • VSCodeを再起動
  • npm run dev を一度止めて再起動

🔧 解決方法:エイリアスを正しく設定しよう

TypeScriptの場合は、プロジェクトルートの tsconfig.json に以下の設定を追加します。

{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@/*": ["src/*"]
    }
  }
}

⚠️ baseUrl"." にすることで、@src を指すようになります。

JavaScriptの場合は jsconfig.json で同じように設定すればOKです。


✅ チェックリスト:設定できたか確認!

チェックポイント OK?
src/lib/profile.ts が存在している
ファイル名が完全一致(大文字小文字含む)
tsconfig.json"paths" が正しく記述されている
開発サーバーを再起動した

ここまでできていれば、エラーは消えているはずです!


🎁 絶対パスのススメ

エイリアスを使うと、こういったパスが…

import { something } from "../../../../lib/profile";

こんなふうにスッキリ書けます👇

import { something } from "@/lib/profile";

プロジェクトが大きくなるほど、この差は効いてきます。
可読性も保守性も爆上がりです!


🙌 おわりに

エラーは「成長のチャンス」。
たしかに最初は戸惑いますが、「なぜ起こったか」を知れば必ず強くなれます。

この記事が、あなたの「なんかよくわからんエラー地獄」からの脱出に役立てば嬉しいです。
いいね・シェア・コメント大歓迎です!それでは、良い開発ライフを🏄‍♂️✨


🧑‍💻 React / Next.js まわりのTipsやトラブル解決記事を発信中!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?