在 #36881 中讨论
原始帖子由 chrisreddington 于2022年8月2日发布
大家好,
我在想是否有人遇到了从Bootstrap 5.2升级到5.2的问题。我知道在sass方面有一些变化(所以已经导入了新的Map部分),但似乎在JavaScript方面也遇到了问题。
我看不到Bootstrap 5.2 migration guide中关于JavaScript的任何内容。我的a site在5.1中与JavaScript一起工作,现在在5.2中不再工作。我现在在控制台中看到了Uncaught TypeError: Class extends value undefined is not a constructor or null
,这让我怀疑这是一个依赖问题。
我网站的主题是hosted in my hugo creator repository,你会发现示例/演示站点也有完全相同的问题(这可能暗示了我这边的问题,以及我如何引用文件——但还没有完全确定问题的所在!)
我通过js/dist文件夹从node_modules中引用各个文件。我引用的顺序是:
"dom/data.js",
"dom/event-handler.js",
"dom/manipulator.js",
"dom/selector-engine.js",
"popper.js",
"base-component.js",
"carousel.js",
"collapse.js",
"dropdown.js"
在进入5.2时,我是否需要考虑各个组件引用的顺序,或者是否存在与其他包可能引入的依赖冲突?
谢谢!
5条答案
按热度按时间stszievb1#
感谢@GeoSot - 讽刺的是,我刚刚偶然发现了#34509,然后发现你对这个问题进行了回应,因为它在PR中被标记了 :)
将这个更改提升到5.2的迁移说明中可能是值得的。我在5.2项目板上注意到,它指出js/dist现在实际上已经被弃用。但是我花了很多时间才找到这些信息。
不过还是要感谢你的提醒,非常感激!
2sbarzqh2#
对于其他遇到问题的人,可以确认切换到使用dist/js/bootstrap.bundle.js对我来说再次有效(再次感谢@GeoSot)。
不太理想,因为我现在的部署包含我不需要的组件的JS代码,但解决了当前的UI问题。
tktrz96b3#
@GeoSot,这是需要保持开放并采取行动的事情,还是我们应该关闭它?
pgpifvop4#
如果我们想使用独立的J's构建文件,我认为我们需要进行一些小的构建更改(我需要检查一下,因为我现在记不起来了)。
0tdrvxhp5#
你可能指的是这个变化。#34509
我们原本打算废弃分离格式,但由于仍在使用,我正在尝试推动一个改变#36854,这与esm构建结合使用会非常方便作为模块。
目前,如果你想继续使用5.2版本,我认为最好使用
dist/js/bootstrap.bundle.js
。