【发布时间】:2020-05-20 21:01:22
【问题描述】:
我正在将 Vue 和 Bootstrap 用于我根据 Vue 官方文档 (https://cli.vuejs.org/guide/build-targets.html#web-component) 生成 Web 组件的应用程序。在大多数情况下,Bootstrap 和我的业务逻辑在 Web 组件的 #shadow-roots 中运行良好,就好像它在轻型 DOM 中一样。
但是,引导工具提示(基于 Popper.js https://popper.js.org/)在 Shadow DOM 中根本不起作用。我还尝试在 Shadow DOM 封装代码中直接使用 Popper.js 和 Tippy.js (https://atomiks.github.io/tippyjs/) 调用工具提示,完全避开 Bootstrap,但我仍然无法让它们工作。
在此处查看示例:https://jsfiddle.net/mfep6rg9/
我可以猜到原因——第 3 方工具提示库很可能找不到目标 DOM 元素,因为它位于 Shadow DOM 中。
是否有第 3 方解决方案可以解决 Shadow DOM/Web 组件封装?
【问题讨论】:
标签: javascript vue.js tooltip web-component shadow-dom