Next.jsのImageでUnsplashの画像が表示できない
Unhandled Runtime Error
Error: Invalid src prop (https://images.unsplash.com/photo) on `next/image`, hostname "images.unsplash.com" is not configured under images in your `next.config.js` See more info: https://nextjs.org/docs/messages/next-image-unconfigured-host
このようにエラーが吐かれ、表示できません。
まだ初心者すぎてエラーを見るとドキがムネムネするんですが、メッセージ読んだら書いてありました。
ホスト名 "images.unsplash.com "がnext.config.js
のimages以下に設定されていません。
完全に理解した(理解した)。
next.config.jsの設定
上記の内容をもとに設定していきます。
設定をいじる前の状態が↓
/** @type {import('next').NextConfig} */
const nextConfig = {}
module.exports = nextConfig
ここに使用したいドメインを指定する必要がある、ということらしい。
追記した結果(赤字が追記部分)↓
/** @type {import('next').NextConfig} */
const nextConfig = {
images: {
domains: ["images.unsplash.com"],
},
};
module.exports = nextConfig;
"unsplash.com" を指定してもダメで、エラーメッセージ内にある "images.unsplash.com" を指定する必要があります。
設定が終わったら ctl+C
でサーバーを止めて、再度 npm run dev
で起動させます。
すると問題なく画像が表示されている…はず。