如何将一小部分Markdown解析为React组件?
我有Markdown的很小一部分,还有一些我想解析为React组件的自定义html。例如,我想将以下字符串转换为: hello *asdf* *how* _are_ you !doing! today 放入以下数组: [ "hello ", <strong>asdf</strong>, " ", <strong>how</strong>, " ", <em>are</em>, " you ", <MyComponent onClick={this.action}>doing</MyComponent>, " today" ] 然后从React渲染函数返回它(React会将数组正确渲染为格式化的HTML) 基本上,我想让用户选择使用一组非常有限的Markdown来将其文本转换为样式化的组件(在某些情况下是我自己的组件!) 危险地使用SetInnerHTML是不明智的,并且我不想引入外部依赖关系,因为它们都非常繁重,并且我只需要非常基本的功能。 我目前正在做这样的事情,但是它非常脆弱,并且不能在所有情况下都起作用。我想知道是否有更好的方法: function matchStrong(result, i) { let match = result[i].match(/(^|[^\\])\*(.*)\*/); if (match) { result[i] = <strong key={"ms" + i}>{match[2]}</strong>; } return …