知识卡片

Popover通过原型继承复用Tooltip

专业/工作 · 175

内容

Bootstrap的Popover插件并未重写显示、隐藏、定位逻辑,而是把Popover.prototype直接赋值为Tooltip.prototype的浅拷贝,只重载getDefaults、setContent等少数几个方法,其余全部继承自Tooltip。这是用JS原型链手工实现的”继承+局部覆盖”模式:先复用整套行为骨架,再针对差异点精确打补丁,比复制粘贴整份代码更省心,两者的bug修复也能保持同步。

参考来源

《深入理解Bootstrap》第5章《JavaScript插件》