1

我正在开发一个允许用户将内容注入可编辑的项目。我contentid在段落中添加了一个属性,这样我就可以跟踪添加的内容以及添加的位置。

<p contentid="1">some default content</p> 

当从该段落中按下回车时,输入的下一个段落也具有该contentid="1"属性。我希望新段落没有该contentid属性。

我正在尝试确定如何/在哪里最好地实现这一目标。我一直在听回车键,schema.addChildCheck但没有取得太大进展。

4

1 回答 1

1

这似乎可以解决问题。也许有点 hacky.. 但意识到选择总是在新创建的元素中。所以我不需要在回调中找到对它的引用,我可以从当前选择中获取新段落。

editor.commands.get( 'enter' ).on( 'afterExecute', () => {
  const block = first( editor.model.document.selection.getSelectedBlocks() );
  editor.model.change( writer => {
    writer.removeAttribute( 'contentid', block );
  });
});
于 2018-05-16T02:09:11.660 回答