🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
**好多使用者问到,wangEditor编辑器能否集成`markdown`?——答案是:富文本编辑器无法和`markdown`集成到一起。** ---- 先不说为什么,咱们先看看一个成熟产品中,对于富文本和`markdown`是如何处理的。 [简书](http://www.jianshu.com/) 是现在很火的一个博客网站,听人说它之所以快速的火起来,和支持`markdown`还有很大的关系。那么咱们看看这位靠着`markdown`火起来的网站,是不是真正的富文本和`markdown`集成起来了? 其实它的`markdown`编辑器和富文本编辑器完全是两个东西,根本没有在一个页面中集成起来。而切换富文本和`markdown`是在用户配置页来切换的。 默认进来是富文本编辑器,如下图: ![](https://box.kancloud.cn/2016-02-19_56c70b5087195.png) 可以进入用户配置页面切换成`markdown`编辑器,如下图: ![](https://box.kancloud.cn/2016-02-19_56c70b509b9a2.png) 再回头来新建一片文章,编辑器就切换到`markdown`了。 ![](https://box.kancloud.cn/2016-02-19_56c70b50a924e.png) 看明白了吧? ---- 下面说说从技术角度为什么难以实现这两者的切换。 简单讲来,富文本和`markdown`对于文字的处理完全是两码事儿。例如,我们选择`abcd`进行加粗,富文本会生成`<b>abcd</b>`,而`markdown`会生成`**abcd**`。 如果想要两者自由切换,需要在切换时,随时切换两种规则,这就会带来很多问题。 第一,如果文字量大,要处理的信息多,单纯用js进行进算,性能是一个问题。 第二,`**abcd**`格式切换成`<b>abcd</b>`格式,有现成的js库可利用,但是`<b>abcd</b>`切换为`**abcd**`怎么办?`markdown`只能编辑常用格式的文字,没有`html`的样式那么强大。例如,`<img src="abc.png" width="300px">`或`<font color="red">abc</font>`切换成为`markdown`就无法实现。 **所以,目前还找不到一款编辑器能自由切换`markdown`和富文本。一个东西不存在,也是有不存在的道理的。** ---- 最后,请大家想明白,在你的产品中,到底是想要一个"理想主义"的自由切换,还是想要简书那样的两种形式。 想清楚。