Bootstrap依赖Popper版本不匹配咨询:是否存在两类Popper?
关于Bootstrap 4.1.0依赖的Popper包疑惑解答
嘿,你猜得没错!这里确实存在两个完全不同的npm包,很容易让人搞混:
popper:这是一个和Bootstrap毫无关系的老旧工具包,它的开发早就停滞了,最新版本停留在1.0.1,完全不是Bootstrap需要用来处理弹窗、下拉菜单定位的那个库。popper.js:这才是Bootstrap 4.x系列指定的peer依赖包,专门用于实现元素的精准定位逻辑。它的版本线是1.x(比如Bootstrap要求的^1.14.0),后来这个包的维护者将其重命名为@popperjs/core(对应2.x及更高版本),但Bootstrap 4.x并不兼容这个新包名,仍然依赖旧的popper.js。
解决方法
你只需要修改package.json里的依赖配置,把错误的popper替换成popper.js,并指定符合要求的版本:
"dependencies": { "popper.js": "^1.14.0", "bootstrap": "^4.1.0" }
之后重新执行npm install(或yarn install),peer依赖的警告就会消失了。
内容的提问来源于stack exchange,提问作者Cos Callis
相关产品推荐
相关产品推荐

