UNPKG

1.18 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 Comp = page[0].default;
29
30 page.forEach(p => {
31 const Comp = p.default;
32 if (Comp) {
33 RM.render(<Comp />, document.getElementById(p.id));
34 }
35 })
36
37
38
39
40
41 }
42
43 $parseMD(page) {
44 const res = page.map(item => {
45 return <div dangerouslySetInnerHTML={{ __html: decodeURIComponent(item.md)}} />
46 });
47
48 return res;
49 }
50
51
52 render() {
53 const {page} = this.state;
54 if (!page) return <div />;
55
56 return (
57 <div>
58 {this.$parseMD(page)}
59 </div>
60 )
61
62 }
63}
\No newline at end of file