Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

246
Views
¿Por qué no puedo usar Leaflet Map en Nextjs incluso con Dynamic Import?

El folleto necesita un objeto de ventana global y, como sabe, en SSR no hay window y devolverá una window is not definded

Busqué mucho y la única forma de usar Leaflet era usar la importación dynamic nextjs pero no obtengo nada en mi página

Llevo un día buscando en la web cómo solucionar esto y hasta ahora NADA me ha funcionado.

Realmente necesito una respuesta para esto

¿Por qué el componente Mapa no se renderiza?

Mapa.tsx

 import { useState } from "react"; import { MapContainer, TileLayer, Marker, useMapEvents } from "react-leaflet"; import "leaflet/dist/leaflet.css"; import "leaflet-defaulticon-compatibility/dist/leaflet-defaulticon-compatibility.css"; import "leaflet-defaulticon-compatibility"; const Map = () => { const [position, setPosition] = useState<[number, number]>([51.505, 51.505]); // Add Marker on Map onClick function Mark() { const map = useMapEvents({ click: ({ latlng }) => { setPosition([latlng.lat, latlng.lng]); }, }); return <Marker position={position} />; } return ( <MapContainer center={[35.7219, 51.3347]} zoom={6} scrollWheelZoom={false} style={{ height: "50vh" }} > <TileLayer url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png" /> <Mark /> </MapContainer> ); }; export default Map;

mi importación dinámica

 import dynamic from "next/dynamic"; const AdPage = ({ ad }: AdPageProps): JSX.Element => { const MapWithNoSSR = dynamic(() => import("./NewAd/map"), { ssr: false, }); return ( <> <MapWithNoSSR /> </> ); }; export default AdPage;
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

En mi aplicación, uso un archivo index.ts separado en la misma carpeta que el componente Map para importar el mapa dinámicamente

índice.ts

 import dynamic from "next/dynamic"; export default dynamic(() => import("./Map"), { ssr: false });

y luego use la importación simple donde necesito este mapa

 import CustomMap from "../Map";
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!