ckeditor - 无界的 CkEditor5 视图值
问题描述
我目前正在尝试为 CkEditor5 构建一个颜色插件,以模仿可用于 CkEditor4 的颜色插件。
我有一个输入法,但是将模型值映射到视图值是我的绊脚石。系统似乎已设置为预先知道每个可能的值并进行映射 - 这对于十六进制值显然是不切实际的。
有没有办法告诉 CkEditor 直接使用视图样式标签中的模型值和模型中的视图值?
解决方案
我假设您正在创建一个带有颜色选择器 UI 的插件。
您将无法将其与 CKE5 可用的现有突出显示插件相结合。相反,我建议创建一个新插件。您可以查看 highlight plugin 以了解提供插件需要做什么。
有没有办法告诉CKEditor直接使用视图样式标签中的模型值和模型中的视图值?
是的。您需要设置正确的向下转换 (model->view) 和向上转换 (view->model) 转换。为此,您需要提供一个生成模型/视图元素的函数。
请参阅downcastAttributeToElement
和的文档upcastElementToAttribute()
。在这些文档中,有一些示例说明如何设置使用style
属性值的转换。Upcast 转换器显示了一个更复杂的示例,但您可以简单地从视图中返回值。
要添加这样的转换器,您需要使用model.Conversion#for..#add
构造:
editor.conversion.for( 'downcast' ).add( downcastAttributeToElement( downcastConfig ) )
editor.conversion.for( 'upcast' ).add( upcastElementToAttribute( upcastConfig ) )
推荐阅读
- netsuite - Netsuite scriptContext.oldRecord 和 scriptContext.newRecord 返回相同的东西
- excel - 将数据输入列时在excel中播放声音
- c - C中的指针给出负值
- c++ - C++编写一个程序,提示用户以数字形式输入一个人的出生日期(Throw/Catch)
- pandas - 如何让熊猫返回 datetime64 而不是 Timestamp?
- excel - 如何按字母顺序对给定范围进行排序并将单元格名称与正在排序的单元格保持联系?
- ruby-on-rails - 如何让 sphinx (search) gem 在诸如 heroku 这样的 PaaS 中工作
- ibm-watson - 使用最终用户反馈来提高 Knowledge Studio 模型的性能
- rest - REST API 的验证 URL 资源
- java - 为什么我不能在 Windows 上直接使用 Java 执行 Cygwin .exe?