Estoy tratando de compilar y exportar mi proyecto Next.JS, y tengo un error de optimización de imagen al exportar.
Creé un cargador personalizado, creando un archivo /services/imageLoader.js con el siguiente contenido:
export default function LocalImageLoader({src, width, quality}) { var fileName = src.split("/").pop(); return `./_next/static/media/${fileName}`; } Y, dentro de todas mis páginas donde usé el componente next/image, agregué el atributo loader a, apuntando a mi función LocalImageLoader, de esta manera:
import LocalImageLoader from '../services/imageLoader'; import logoImage from '../resources/images/logo.png'; // boring stuff here <Image loader={LocalImageLoader} src={logoImage} alt="Logo" className="img-fluid" /> // more boring stuff here Después de eso, cada vez que intento ejecutar npm run export (configuré el script de exportación en mi paquete.json, que ejecuta next build && next export ), y aparece el siguiente error en mi pantalla:
Error: Image Optimization using Next.js' default loader is not compatible with `next export`. Possible solutions: - Use `next start` to run a server, which includes the Image Optimization API. - Use any provider which supports Image Optimization (like Vercel). - Configure a third-party loader in `next.config.js`. - Use the `loader` prop for `next/image`. Read more: https://nextjs.org/docs/messages/export-image-api at /home/raphael/Projects/Next/learning/testProject/node_modules/next/dist/export/index.js:256:23 at async Span.traceAsyncFn (/home/raphael/Projects/Next/learning/testProject/node_modules/next/dist/trace/trace.js:74:20)¿Alguien puede decirme qué estoy haciendo mal?
¡Gracias!
Olvidó agregar su cargador personalizado a next.config.js . Deberá hacer algo como en el fragmento a continuación. En caso de que no tenga éxito, hay cargadores disponibles, porque el cargador predeterminado no funcionará cuando exporte.
module.exports = { images: { loader: 'custom', path: 'https://example.com/myaccount/', }, }Más información aquí: https://nextjs.org/docs/api-reference/next/image#loader-configuration