vercel ๋น๋ ์ค์ svg๋ฅผ ์ฐพ์ ์ ์๋ค๋ ์๋ฌ ๋ฉ์ธ์ง๊ฐ ๋์๋ค. ์ฐพ์๋ณด๋๊น Nextjs์์ svg๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด @svgr/webpack์ ์ฌ์ฉํด์ผํ๋ค๊ณ ?
๊ทธ๋์ ์ผ๋จ npm i -D @svgr/webpack command๋ก ์ค์นํ๊ณ , ํ๋ก์ ํธ ๋ฃจํธ์ ์๋ next.config.mjs์ ๋ค์๊ณผ ๊ฐ์ด ์ค์ ์ ์ถ๊ฐํ๋ค.
/** @type {import('next').NextConfig} */
const nextConfig = {
reactStrictMode: true,
webpack: (config) => {
config.module.rules.push({ // ์นํฉ ์ค์ ์ ๋ก๋ ์ถ๊ฐ
test: /\.svg$/i,
issuer: /\.[jt]sx?$/,
use: ["@svgr/webpack"],
});
return config;
},
};
export default nextConfig;
์ ์ค์ ๋งํ๋ฉด ์ปดํฌ๋ํธ๋ก๋ง svg๋ฅผ ์ฌ์ฉํ ์ ์์ด์, ๋๋ svg๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ๋ง๋ค์ด์คฌ๋ค.
/components/svg/Airbnb.js
export function Manimirror() {
return (
<svg width="29" height="29" viewBox="0 0 29 29" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
... path ์ค์ ..
/>
</svg>
);
}
export function Emptymirror() {
return (
<svg width="112" height="112" viewBox="0 0 112 112" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
... path ์ค์ ..
/>
</svg>
);
}
์ด๋ ๊ฒ ์ปดํฌ๋ํธ๋ก ๋ง๋ค์ด๋๊ณ ์ฌ์ฉํ ์ปดํฌ๋ํธ์์๋ <Emptymirror /> ์ด๋ฐ ์์ผ๋ก ์ฌ์ฉํ์
์ค์ ์ ์๋ฃํ๊ณ pushํ๋๋ ๋ค์๊ณผ ๊ฐ์ด ๋ฐฐํฌ ์ฑ๊ณต ~ !

'issue' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| ์๋์น ์๊ฒ ๋ณ๊ฒฝ๋ CRLF <=> LF ํด๊ฒฐํ๊ธฐ (0) | 2025.01.05 |
|---|---|
| homebrew-core is a shallow clone. (brew) (0) | 2024.10.29 |
| ํ์๊ฐ์ ์ ์ด๋ฉ์ผ ์ธ์ฆ ๋ณด์ ์ด์ (api endpoint ๊ด๋ จ) (2) | 2024.10.16 |
| Git Error: RPC failed; HTTP 400 curl 22 The requested URL returned error: 400 (1) | 2024.10.02 |
| Date.toISOString() ๋ก ์ธํ -9์๊ฐ ๋๋๋ฆฌ๊ธฐ (@date-fns) (0) | 2024.08.29 |