NextJS开发过程中,使用了MateriaUI进行博客网站搭建,对Markdown的语法插件markdown-to-jsx
了解不多,并且想要高亮代码块的显示效果。
使用到的组件
npm install --save react-markdown react-syntax-highlighter
1.react-markdown
:markdown解析展示组件
2.react-syntax-highlighter
:高亮样式组件
使用方式(组件化)
import React from 'react';
import ReactMarkdown from 'react-markdown';
import {Prism as SyntaxHighlighter} from 'react-syntax-highlighter'
import {tomorrow } from 'react-syntax-highlighter/dist/cjs/styles/prism';
const renderers = {
code: ({language, value}) => {
return <SyntaxHighlighter style={tomorrow} language={language} children={value} />
},
}
export default function Markdown(props) {
return <ReactMarkdown renderers={renderers} options={options} {...props} />;
}
出现的问题
react-syntax-highlighter
报错Unexpected token export
解决方式:样式路径esm
改cjs
【相关ISSUE】
内容原创,未经本人同意禁止转载
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。