关于重写评论插件这件事

💡 原文中文,约1700字,阅读约需5分钟。
📝

内容提要

文章讨论了对评论插件的重构,原插件存在许多问题,因此决定使用 Vue3 重新构建。新插件支持回复、插入表情、私密评论和邮件提醒等功能。在重构过程中,遇到样式处理、光标问题和数据共享等技术难题,但大部分问题都有解决方案。

🎯

关键要点

  • 原评论插件存在许多 bug 和漏洞,决定使用 Vue3 进行重构。
  • 新插件支持回复、插入表情、私密评论和邮件提醒等功能。
  • 重构过程中遇到样式处理、光标问题和数据共享等技术难题。
  • 样式问题需要手动处理子组件样式插入到 shadow-root。
  • 光标问题涉及到 contenteditable 的兼容性,需存储光标信息。
  • 跨 customElement 数据共享可以通过 Vue3 的 reactive 实现简易 store。
  • 重构过程中发现许多问题,但大部分都有解决方案。

延伸问答

为什么要重构评论插件?

原评论插件存在许多 bug 和漏洞,维护起来费力,因此决定重构。

新评论插件有哪些新功能?

新插件支持回复、插入表情、私密评论和邮件提醒等功能。

重构过程中遇到了哪些技术难题?

遇到样式处理、光标问题和数据共享等技术难题。

如何解决样式处理问题?

样式问题需要手动处理子组件样式插入到 shadow-root。

光标问题是如何影响评论插件的?

光标问题涉及到 contenteditable 的兼容性,需存储光标信息。

如何实现跨 customElement 的数据共享?

可以通过 Vue3 的 reactive 实现简易 store 来共享数据。

➡️

继续阅读