Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

405
Vistas
¿Cómo cargo un archivo de descuento en un componente de reacción?

¿Cómo cargaría un archivo de descuento .md en un componente de reacción? He probado tantas bibliotecas npm a través de búsquedas en Google y no puedo encontrar una buena solución.

Imagen de código

Quiero cargar el archivo .md algo como:

 render() { <div> <MarkDown src="about.md" /> </div> }
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Yo uso marcado ( GitHub ).

Primero lo importo así:

 import marked from "marked";

Luego busco mi archivo *.md dentro del evento componentDidMount de React y lo almaceno en el estado de mi componente usando marked(text) (donde el text es la respuesta):

 componentDidMount() { const readmePath = require("./Readme.md"); fetch(readmePath) .then(response => { return response.text() }) .then(text => { this.setState({ markdown: marked(text) }) }) }

... y finalmente lo presento en la página usando el atributo dangerouslySetInnerHTML SetInnerHTML:

 render() { const { markdown } = this.state; return ( <section> <article dangerouslySetInnerHTML={{__html: markdown}}></article> </section> ) }
over 4 years ago · Santiago Trujillo Denunciar

0

Un ejemplo de trabajo completo con react-markdown :

 import React, { Component } from 'react' import ReactMarkdown from 'react-markdown' import termsFrPath from './Terms.fr.md' class Terms extends Component { constructor(props) { super(props) this.state = { terms: null } } componentWillMount() { fetch(termsFrPath).then((response) => response.text()).then((text) => { this.setState({ terms: text }) }) } render() { return ( <div className="content"> <ReactMarkdown source={this.state.terms} /> </div> ) } } export default Terms
over 4 years ago · Santiago Trujillo Denunciar

0

Debe usar react-markdown en lugar de la respuesta aceptada , esta solución no usa dangerouslySetInnerHTML .

Aplicación.js

 import React, { Component } from 'react'; import AppMarkdown from './App.md'; import ReactMarkdown from 'react-markdown'; class App extends Component { constructor() { super(); this.state = { markdown: '' }; } componentWillMount() { // Get the contents from the Markdown file and put them in the React state, so we can reference it in render() below. fetch(AppMarkdown).then(res => res.text()).then(text => this.setState({ markdown: text })); } render() { const { markdown } = this.state; return <ReactMarkdown source={markdown} />; } } export default App;

Aplicación.md

 # React & Markdown App * Benefits of using React... but... * Write layout in Markdown!
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda