Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

245
Visualizações
Error: debe usar la importación para cargar el módulo ES: D:\node_modules\react-markdown\index.js require() de módulos ES no es compatible

Actualmente estoy usando "react": "17.0.2" y he instalado "react-markdown": "^7.0.1" a través npm i react-markdown Estoy usando este paquete para mostrar mi texto enriquecido que Estoy obteniendo de mi Strapi CMS. He usado el siguiente código para mostrar el contenido:

 import ReactMarkdown from "react-markdown"; export default function name({ posts }) { return ( <> <div> <div> {posts.Title} </div> </div> <div> <ReactMarkdown source={posts.Content} escapeHtml={false} /> </div> </> ); } export async function getStaticProps() { const res = await fetch("http://localhost:1337/blogs"); const posts = await res.json(); return { props: { posts }, }; }

Pero cuando ejecuto esto me da el siguiente error:

ingrese la descripción de la imagen aquí

Estoy usando el nodo v14.17.0 y he intentado agregar "type": "module" .

Mi paquete.json:

 { "name": "passportlegacy", "version": "0.1.0", "private": true, "scripts": { "dev": "next dev", "build": "next build", "start": "next start", "lint": "next lint" }, "dependencies": { "axios": "^0.21.1", "babel-plugin-inline-react-svg": "^2.0.1", "next": "11.0.1", "next-images": "^1.8.1", "react": "17.0.2", "react-dom": "17.0.2", "react-map-gl": "^6.1.16", "react-markdown": "^7.0.1", }, "devDependencies": { "@svgr/webpack": "^5.5.0", "@types/react": "17.0.16", "eslint": "7.32.0", "eslint-config-next": "11.0.1", "typescript": "4.3.5" } }
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Resolví esto simplemente colocando react-markdown en la versión 6.

Con la versión 7 de react-markdown, se trasladaron solo a ESM. Hay una explicación de lo que eso significa aquí , pero parece que Jest (versión 27) todavía solo tiene soporte experimental para módulos ESM puros a partir de octubre de 2021. No pude hacer que funcionara en mi proyecto, y la versión 6 de react-markdown funciona bien por ahora.

Creo que la próxima versión principal de Jest (versión 28) podría ser compatible con ESM.

about 4 years ago · Juan Pablo Isaza Relatório

0

Actualmente, Node está tratando su archivo .js como CommonJS. Debe decirle a Node que lo trate como un módulo ES.

Intente agregar "type": "module" en su archivo package.json .

Puede colocarlo en cualquier lugar en el nivel superior. P.ej:

 { "name": "passportlegacy", "version": "0.1.0", "type": "module", "private": true, "scripts": { ... } ... }

Más información: paquete.json y extensiones de archivo - Documentación de Node.js 14.x LTS

about 4 years ago · Juan Pablo Isaza Relatório

0

Usa esta versión

 "dependencies": { "react-markdown": "^6.0.0" }

Entonces emite

 npm install
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda