我正在构建一个简单的文本编辑器,它依赖于Draft.js来装饰文本(主要是突出显示)。我真的很喜欢构建具有自定义语法高亮的可靠输入是多么简单。
但是,我不喜欢我必须公开整个编辑器状态来执行此操作。我更喜欢让一个只有value
属性的编辑器接受一个字符串并通过onChange
道具传递一个字符串。
这似乎是一件合理的事情,但我对于转移选择状态的难度感到茫然。
由于draft.js的实现方式,我觉得很难做到。我需要在每次更改时基于value
道具创建一个新的editorState,这是可行的,但很难在旧selectionState
和新editorState
之间转移selectionState
因为 geom_bar(stat="identity", position="stack", width=1)
依赖于每个州独有的不透明标识符。
有没有人试图做到这一点?如果我使用一个更简单的解决方案,那么draft.js是否过度杀戮?我只使用装饰器,所以我想重建那个部分不会太难。