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