我们使用 Quill 1.3.7 已经有一段时间了。我编写了一些自定义嵌入印迹,它们可以正常工作。然后我们升级到 2.0.0-dev3 以获得新功能,这打破了我们的自定义印迹。当我在工具栏中选择选项时收到以下错误:
Class constructor BlockEmbed cannot be invoked without 'new'
这是我尝试过的一些方法:
import Quill from "quill";
class PageBreak extends Quill.import("blots/block/embed") ...
class PageBreak extends Quill.import("blots/embed") ...
class PageBreak extends Quill.import("parchment").EmbedBlot ...
class PageBreak extends Quill.import("parchment").Embed ...
这些都导致了上面列出的错误。
此外,我已经走上了直接使用 Parchment 的路线,但出现了不同的错误(通常 Parchment 未定义):
import Parchment from "parchment";
class PageBreak extends Parchment.Embed ...
class PageBreak extends Parchment.EmbedBlot ...
我正在使用 Quill.insertEmbed() 函数来完成此操作。我还尝试创建一个 Delta 并更新文档。
可以在此处找到我们自定义 PageBreak 印迹的示例:https ://codesandbox.io/s/vibrant-flower-8kuy2?file=/src/PageBreak.ts
我们的目标是 es5。