Javascript 如何向quilljs中的每个'p'元素添加属性?

Javascript 如何向quilljs中的每个'p'元素添加属性?,javascript,quill,parchment,Javascript,Quill,Parchment,如何向quilljs中的每个块元素添加属性 我知道我可以扩展块,但即使在键盘上按“Enter”键也可以添加属性吗 let Block = Quill.import('blots/block'); class ParaBlot extends Block { static create(value) { let node = super.create(); return node; } } 要向每个块元素添加类似样式或类的属性 我们可以从lib扩展默认元素

如何向quilljs中的每个
元素添加属性

我知道我可以扩展
,但即使在键盘上按“Enter”键也可以添加属性吗

let Block = Quill.import('blots/block');

class ParaBlot extends Block {
   static create(value) {
      let node = super.create();
      return node;
   }
}

要向每个块元素添加类似样式或类的属性

我们可以从lib扩展默认元素

就像您已经在做的一样,我们导入
Block Blot
元素,并扩展
create(…)
方法,以使用
setAttribute
函数编辑节点的属性

这里我将添加一个border和一个customBlock类

最后,我们用我们的BlockBlot覆盖默认BlockBlot

const BlockBlot = Quill.import('blots/block');

class CustomBlockBlot extends BlockBlot {
    static create(value) {
        const node = super.create(value);
        node.setAttribute('style', 'border: 1px solid lightgrey');
        node.setAttribute('class', 'customBlock');
        return node;
    }
}
Quill.register('formats/block', CustomBlockBlot);
这是一个演示

在创建目标纬管实例之前,必须运行此代码块 使用
新羽毛笔(…)

我们也应该考虑它不能动态地改变格式化,尽管我相信我们可以备份<代码> Delta < /代码>,并用这些新的默认值创建一个新的Quess实例。


关于这一点的另一篇好文章

目前正在学习羊皮纸x羽毛笔,我将非常感谢关于最佳实践的任何建议