我想导入或粘贴一个带有class-name属性的简单html片段,以便在Draft.js编辑器中解析和激活这些类。
这个类名的解析和设置应该独立于html-tag类型,例如<div>, <span>, <b>, <strong>
等。
起初,我认为这是一个与draft.js相关的标准问题,但我没有在网上找到任何答案,这就是我在这里陈述我的问题的原因。
我坚持这个:
我看到,当我使用这个简单的handlePastedText函数时,粘贴了正确的html代码:
handlePastedText(text, html){
console.log(html);
return false;
}
// one <span class="blau">simple</span> test
使用这个draft-js编辑器:
<Editor readOnly={this.state.readOnly}
editorState={this.state.editorState}
onChange={this.onChange}
handlePastedText={this.handlePastedText.bind(this)}/>
但是,相应的draft-js编辑器状态不知道该类,因此在浏览器中没有相应地格式化。 EditorState是:
{"entityMap":{},
"blocks":[{ "key":"9fqpj","text":"one simple test",
"type":"unstyled",
"depth":0,
"inlineStyleRanges":[],
"entityRanges":[],
"data":{}}]}
支持这个html来源:
<span data-text="true">one simple test</span>
我很想知道这个问题有一个优雅而简单的解决方案。 只需将classNames导入Draft.js编辑器? 也许我从一个错误的视角看到它,但我认为这对更广泛的观众是有益的,因为你可以在任何Draft.js conetentEditable编辑器中轻松处理,粘贴和格式化任何(外部)样式的片段。
提前谢谢!