【问题标题】:Uncaught TypeError: Cannot convert object to primitive value(zone-evergreen.js:171)未捕获的类型错误:无法将对象转换为原始值(zone-evergreen.js:171)
【发布时间】:2020-07-25 09:03:42
【问题描述】:

Angular 9 中(使用 Bootstrap 4 和 Jquery 3.5.1)。当点击引导 collapse 按钮时,我的浏览器控制台出现错误,而不是 dropdown 菜单。

我真的不知道错误到底来自哪里。

Can't convert object to primitive value(zone-evergreen:171).


Uncaught Type Error: Cannot convert object to primitive value(zone-evergreen.js:171 )
    at RegExp.test (<anonymous>)
    at HTMLDivElement.<anonymous> (bootstrap.bundle.min.js:6)
    at Function.each (jquery.min.js:2)
    at S.fn.init.each (jquery.min.js:2)
    at S.fn.init.a._jQueryInterface [as collapse] (bootstrap.bundle.min.js:6)
    at HTMLDivElement.<anonymous> (bootstrap.bundle.min.js:6)
    at Function.each (jquery.min.js:2)
    at S.fn.init.each (jquery.min.js:2)
    at HTMLButtonElement.<anonymous> (bootstrap.bundle.min.js:6)
    at HTMLDocument.dispatch (jquery.min.js:2)

【问题讨论】:

  • 这是由 jQuery 3.5.0 引起的,请将您的 jquery 版本降级到 3.4.1 以进行临时修复

标签: bootstrap-4 angular9


【解决方案1】:

这个问题似乎与 jQuery 3.5.0 有关。这是一个影响许多插件的重大更改。暂时恢复到以前的 jQuery 版本(如 3.4.1)为我解决了这个问题。

来源:jQuery Issue #4665

更新:

jQuery 3.5.1 恢复了重大更改,应该可以安全使用。

公告:jQuery 3.5.1 Released: Fixing a Regression

【讨论】:

  • 我有同样的问题,FWIW 这个建议不起作用。我使用的 WordPress 使用了一些旧的 1.x 版本,我换成了 3.4.1 并且仍然看到问题。我认为这与一些相当新的东西有关,因为过去一个小时内有非常相似的帖子(见stackoverflow.com/questions/61176484/…
  • 我错了,别管最后一条评论了,我拉了两个版本的 jQuery
  • 就我而言,我的引导手风琴停止工作。也就是说,点击卡片标题并没有打开卡片。 npm i jquery@3.4.1 修复了我的 Cannot convert object to primitive value 问题。
  • 这个答案救了我的培根。太感谢了!我的包,json 有“jquery”:“^3.2.1”。将其更改为“jquery”:“3.2.1”解决了问题。
  • Bootstrap 文档还建议使用 3.4.1 documentation 的版本。
【解决方案2】:

如果您打算使用 node/npm 构建自己的 jquery,他们现在已经修复了该问题(请参阅 https://github.com/jquery/jquery/commit/65e909844c2d064606217b47e92eff12ebdb79de),然后只需下载上面链接上的提交并构建它。

我所做的是编辑我的 jquery.min.js (3.5.0)

我做的步骤:

  1. 搜索该行:return t||(t=Object.create(null) 在第 2 行第 32856 列
  2. Object.create(null) 替换为{}

到目前为止,一切都很好

【讨论】:

    【解决方案3】:

    在今天的回答中,jquery 已经解决了问题,您无需进行任何回归。

    只需卸载jquery,重新安装它,2020-05-04 发布的最新 3.5.1 版本应该可以解决问题 - 对我来说确实如此,我也是使用 Angular 9BS4*
    一个美丽 - 恢复正常。

    【讨论】:

      【解决方案4】:

      刚刚也发现了这个问题,所以从 3.5.0 移到 3.5.1(最新)并且错误消失了

      【讨论】:

        猜你喜欢
        • 2022-12-17
        • 1970-01-01
        • 1970-01-01
        • 2013-01-12
        • 2016-05-02
        • 1970-01-01
        • 1970-01-01
        • 2021-09-01
        • 1970-01-01
        相关资源
        最近更新 更多