Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I load a markdown file into a react component?

How would I load a .md markdown file into a react component? I have tried so many npm libraries through google searches and I cant find a good solution.

Code image

I want to load the .md file something like:

render() {     <div>         <MarkDown src="about.md" />     </div> } 
like image 361
PizzaHead Avatar asked Mar 21 '17 13:03

PizzaHead


People also ask

How do I import a markdown?

To import markdown files Alternatively, click on the red plus symbol, choose Import..., click on Upload files(s), select the exported document, and click Open. For each markdown file, a new item is created.

What is import {} In React?

Introduction. Importing and exporting in React JS will help us write modular code, i.e., splitting code into multiple files. Importing allows using contents from another file, whereas exporting makes the file contents eligible for importing.


1 Answers

I use marked (GitHub).

I first import it like this:

import marked from "marked"; 

I then fetch my *.md file within React's componentDidMount event and store it in my component's state using marked(text) (where text is the response):

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

...and finally I render it on the page using the dangerouslySetInnerHTML attribute:

render() {   const { markdown } = this.state;    return (     <section>       <article dangerouslySetInnerHTML={{__html: markdown}}></article>     </section>   ) } 
like image 52
James Donnelly Avatar answered Sep 20 '22 14:09

James Donnelly