Est*_*ask 5 javascript reactjs quill
我将使用组件(Angular/Vue/React 或其他)作为将嵌入编辑器的自定义构建块:
class FooBlot extends BlockEmbed {
static create(val) {
const node = super.create();
React.render(<FooComponent ...>, node);
node.contentEditable = false;
return node;
}
}
FooBlot.tagName = 'DIV';
FooBlot.className = 'foo';
FooBlot.blotName = 'foo';
Run Code Online (Sandbox Code Playgroud)
插入到 as quill.insertEmbed(..., 'foo', val)
。
所以预计
<div class="foo" data-bar="Bar"></div>
Run Code Online (Sandbox Code Playgroud)
将被渲染为
<div class="foo" data-bar="Bar">
<div>
<div class="bar">Bar</div>
...
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
在编辑器中。
但我希望<div class="foo" data-bar="Bar"></div>
没有嵌套 DOM 作为编辑器值,因为嵌套节点仅用于预览目的。
我试图解决的另一个问题是组件预计不可编辑,但设置contentEditable
添加了输出中不需要的contenteditable
属性<div class="foo">
。
这种清理应该如何对编辑器值执行?