UNPKG

1.1 kBJavaScriptView Raw
1const marked = require('./marked');
2const babel = require('babel-core');
3const renderer = new marked.Renderer();
4
5let res = '';
6
7const id = 'comp' + Math.random();
8
9renderer.code = (code, lang) => {
10 res = code;
11 // console.log(babel.transform(code, {
12 // plugins: ["transform-react-jsx"]
13 // }));
14 // const comp = babel.transform(code, {
15 // plugins: ["transform-react-jsx"]
16 // });
17
18 // eval(comp);
19
20
21 return `
22 <div>
23 <div id=${id}></div>
24 <pre><code>${encodeURIComponent( code)}</code></pre>
25 </div>`;
26}
27
28function process(source) {
29 source = marked(source, {renderer: renderer});
30 const res = JSON.stringify(source);
31 return res;
32}
33
34
35module.exports = function(source, map){
36 this.cacheable && this.cacheable();
37 //对source进行解析
38 var md = process(source);
39 res += `\n export const md=${md}; \n export const id="${id}"`
40 console.log('----------------')
41 console.log(res);
42 console.log('--------------')
43
44 this.callback(null, res, map);
45 // return "module.exports = " + '{}';
46}
\No newline at end of file