Browse Source

fix: heading display

dev
Liu Jiangyi 5 years ago
parent
commit
44a54bfb1b
  1. 14
      src/Common.js

14
src/Common.js

@ -65,11 +65,22 @@ export class HighlightedMarkdown extends Component {
const processDefs = new HtmlToReact.ProcessNodeDefinitions(React)
const processInstructions = [
{
shouldProcessNode: (node) => node.name === 'img',
shouldProcessNode: (node) => node.name === 'img', // disable images
processNode (node) {
return (<div>[图片]</div>)
}
},
{
shouldProcessNode: (node) => (/^h[123456]$/.test(node.name)),
processNode (node, children, index) {
let currentLevel = +(node.name[1])
if (currentLevel < 3) currentLevel = 3;
const HeadingTag = `h${currentLevel}`
return (
<HeadingTag key={index}>{children}</HeadingTag>
)
}
},
{
shouldProcessNode (node) {
return node.type === 'text' // pid, nickname, search
@ -107,7 +118,6 @@ export class HighlightedMarkdown extends Component {
]
const renderedMarkdown = renderMd(this.props.text)
const parser = new HtmlToReact.Parser()
console.log(`prerender:${renderedMarkdown}`)
return parser.parseWithInstructions(renderedMarkdown, node => node.type !== 'script', processInstructions)
}

Loading…
Cancel
Save