Dojo
最新
最佳
搜索
订阅
解道Jdon
架构设计
领域驱动
DDD介绍
DDD专辑
战略建模
领域语言UL
领域事件
商业分析
工作流BPM
规则引擎
架构师观点
数据工程
产品经理
系统思维
微服务
微服务介绍
微服务专辑
模块化设计
SOA
API设计
clean架构
SpringBoot
分布式事务
事件溯源
Kafka消息
Kubernetes
DevOps
编程设计
GoF设计模式
模式专辑
面向对象
函数式编程
编程语言比较
编程工具比较
形式逻辑
前端编程
Reactive编程
Jdon框架
Rust语言
人工智能
Web3
模因梗
幽默梗
程序员吐槽
面试技巧
Java入门
数字化转型
认知偏差
道德经
更多话题
ProseMirror - 用于在Web上构建富文本编辑器的工具包
19-01-26
banq
这是一款可以生成结构化,语义上有意义的文档的内容编辑器,但这样做的方式很容易让用户理解。ProseMirror试图弥合
Markdown
文本编辑和经典
WYSIWYG
编辑器之间的差距。
特点:
协同编辑
ProseMirror具有内置的,可靠的支持,用于协作编辑,其中多个人实时处理同一文档。
可扩展的模式
文档模式允许使用自定义结构编辑文档,而无需从头开始编写自己的编辑器。
模块化
模块化
架构
确保您只加载所需的代码,并可根据需要替换系统的各个部分。
可插拔
插件系统允许您轻松启用其他功能,并以方便的格式打包您自己的扩展。
实用
功能强大且不可变的体系结构使ProseMirror可以轻松集成到现代Web应用程序中,并可靠地实现复杂的行为。
Unopinionated
核心库很小且通用,提供了可以构建非常不同类型的编辑器的基础。
网友评论:
ProseMirror中的许多想法都很好地反映了前端Web开发中的许多最佳现代趋势(如React.js),网友lewisjoe认为:ProseMirror是我曾经使用过的最好的源码。
james认为:
1.该组件质量非常高,已被主要企业使用:纽约时报,卫报,Zoho ......
2.这个组件由在开源社区中受到广泛认可的开发人员负责。
arclini:
我最近一直在构建一个编辑器,并考虑了Slate并简要地使用了Draft(都建立在React之上)。我们最终使用了Quill。
如果你们中的任何一个人使用过Quill和Prosemirror,你们对两者之间的差异印象如何?
这是我到目前为止所观察到的:
1. DraftJS(React)适用于桌面,但没有协作编辑,移动支持和有限开发的计划。我们发现很难扩展自定义行为的粘贴处理。另一方面,围绕它建立了很多漂亮的库(我们使用了中草案)
2. Slate(React)绝对是不需要移动支持的React开发人员的方法。它已经成熟并且拥有一个良好的开发者社区。一个缺点是一些流行的插件失去了与最新版Slate的兼容性,一些插件维护者(特别是Gitbooks)决定停止跟踪主线版本[1]
3. Quill(非React)似乎非常成熟,拥有良好的插件生态系统。它不依赖于React Components,而是依赖于DOM和您构建的模型之间的严格映射。“模型”是DOM,可以这么说,但是有很多限制来避免ContentEditable问题。我们发现它非常成熟,而且它是我们发现的3个开箱即用的移动和协作编辑支持中唯一的一个。这对我们很重要,所以我们今天最终使用它
lewisjoe:
我简要分析一下ProseMirror以及Quill对比:
1. 与Quill相比,ProseMirror似乎建立了更好的文档。
2. ProseMirror的作者真正想到了每一个API,并且大部分细节都恰到好处。
例如,如果我应该在Quill vs ProseMirror之上构建一个语法检查器,我在Quill中找不到任何API,它们允许我们用语法错误和建议来装饰视图,而不会用自定义节点污染核心数据模型/属性。另一方面,ProseMirror具有针对这种情况的装饰器(
view
.Decorations>https://prosemirror.net/docs/ref/
view
.Decorations)的概念。这只是一个例子。
更多看看Quill自己的作者:
https://news.ycombinator.com/item?id=15468402
Prosemirror比Quill更愿意牺牲简单的力量。这种价值差异体现在目标受众,架构和API设计中:
1. Quill可以用于快速用例。Prosemirror特别警告:“如果您正在寻找一个简单的drop-in富文本编辑器组件,ProseMirror可能不是您需要的。(我们希望这些组件能够构建在它之上。)该库针对要求苛刻,高度集成的用例进行了优化,但代价是简单。“
2. Prosemirror的模式比Quill更灵活。Prosemirror似乎允许任何东西,而Quill强加一些约束。例如,Quill要求所有节点都是叶子,不能有子节点或容器,并且必须至少有一个子节点。Prosemirror中不允许有可以选择生成子节点的节点。
根据我的经验,Quill强加的约束导致跨浏览器的更一致和无错误的体验。
3. Quill更受战斗考验。Slack,Salesforce,LinkedIn,Intuit和许多其他人在他们面向用户的主要生产产品中使用Quill,而不是仅限内部员工的工具。Prosemirror与纽约时报有一个良好的开端,但目前在采用方面存在很大差异。
ria富客户端