UNPKG

1.13 kBJavaScriptView Raw
1import React from 'react';
2import RM from 'react-dom';
3
4import mdJson from '../tmp/__md__.json';
5
6
7export default class Render extends React.Component {
8 constructor(props) {
9 super(props);
10 this.state = {
11 page : ''
12 }
13
14 }
15 setPage(pageName) {
16 this.setState({
17 page: require(`../tmp/__${pageName}`)
18 })
19 }
20
21 componentDidMount() {
22 // RM.render(<MD.Comp />, document.getElementById(id));
23 }
24
25 componentDidUpdate() {
26
27 const {page} = this.state;
28 const MD = page[0].Comp;
29
30 RM.render(<MD />, document.getElementById(page[0].id));
31
32 setTimeout(() => {
33 hljs.initHighlightingOnLoad();
34 }, 1000);
35 }
36
37 $parseMD(page) {
38 const res = page.map(item => {
39 return <div dangerouslySetInnerHTML={{ __html: decodeURIComponent(item.md)}} />
40 });
41
42 return res;
43 }
44
45
46 render() {
47 const {page} = this.state;
48 if (!page) return <div />;
49
50 return (
51 <div>
52 {this.$parseMD(page)}
53 </div>
54 )
55
56 }
57}
\No newline at end of file