介绍又一次遇到了需要富文本编辑的场景,发现了一些之前没有想到的点,这里整理一下。来源我的GitHub参考点在使用富文本插件的时候,比较选项的时候,我个人找到了以下参考点:文档描述,这个可以节省很多时间,无论是在比较的时候还是在使用的时候。国际化,有些真的没有国际化,连文档都没有说明。是否使用原生HTML标签来实现列表、链接、标题等各种效果,其样式是否与自身系统样式重置冲突,以及其他显示编辑过的富文本的地方也要考虑。字体支持,加载额外的字体文件可能会增加包的大小。图片上传处理,需要自己写一些插件。对于视频插入的处理,有些插件只是插入一个链接,不同的视频源可能会有不同的效果。空的,富文本开头可能有一个默认的标签,但是你看不到,拿来就能拿,但实际上是没有输入内容的。初始化、内容更改、获得/失去焦点事件侦听器,在嵌入到其他框架中时很有用。扩展,这个分为定制和覆盖原有功能两种形式,根据实际需要而定。有关字体方面的信息,请参阅字体。这是我发现的一些免费和开源富文本插件的比较。以下插件仅供参考。根据Quill文档,Quill是一个为兼容性和可扩展性而构建的所见即所得的现代编辑器。截至2019.12.12还在维护中。综合以上考虑,我有以下亲身经历。好东西:有独立包,大部分功能不需要额外安装其他依赖。实现的格式效果有自己单独的处理,比如ul标签的样式。支持在部分视频网站插入分享链接。扩展支持自定义和覆盖。显示是极简主义的。不好的方面:文档感觉不太好用。没有国际化。异步图像处理需要单独重写,没有提供相应的API。工具栏和操作没有相应的提示信息。根据Summernote文档,Summernote是一个超级简单的所见即所得编辑器。截至2019.12.12还在维护中。综合以上考虑,我有以下亲身经历。优点:文档相对完整且易于查找。丰富的事件和方法,包括异步图片上传处理API。支持国际化。工具栏和操作会有提示信息,图片和表格会伴随浮动操作工具。支持在部分视频网站插入分享链接。扩展支持自定义。显示是极简主义的。不好的方面:需要额外安装JQuery的依赖包。依赖Bootstrap的样式和一些组件,但不是必须的,也有不依赖的版本。如果觉得不好看,需要自己写额外的样式调整。编辑效果使用H系列、ul、ol、table等HTML标签原版效果。显示的地方需要重新设置样式。根据UEditor文档介绍,UEditor是一款所见即所得的富文本网页编辑器,轻量级、可定制、界面友好。没有人维护它。已经实际使用过了,主要功能还是没问题的。综合以上考虑,我有以下几点个人体会。好东西:文档很详细,因为开发人员也是中国人。独立包。支持国际化。一些实现的格式效果有自己独立的重置处理。功能很强大也很丰富,一般都有一些富文本。草稿存储在本地。扩展支持自定义。不好的方面:使用起来很像早期的编辑器,一些交互弹窗也很原始。您使用的功能越多,与其他插件相比配置就越复杂。根据Slate文档,Slate是一个完全可定制的富文本编辑框架。截至2019.12.12还在维护中。综合以上考虑,有以下个人的一些发现。好消息:文档列出了内部实现的相关属性和方法,还有中文版。独立包。实现的格式效果有自己独立的复位处理。支持在部分视频网站插入分享链接。选择内容后支持浮动操作工具。有对应的自定义react版本。扩展支持自定义。坏处:没有国际化。注重定制化,如果想增加更多的功能,需要花时间去寻找对应的包,阅读对应的包文档。工具栏的交互与其他插件有些不同。要有效,您必须先选择内容,然后再选择格式。提供的图片上传示例只支持图片源URL方式。使用react时,阅读文档比较复杂。参考11最佳富文本编辑器QuillSummernoteUEEditorSlate
