javascript - 不要向错误的原型添加方法
问题描述
我将 jQuery 与 Electron 应用程序一起使用,但我总是收到一个似乎与 jQuery 的补间函数相对应的错误。
我通过标准节点加载 jQuery 要求:
<script type="text/javascript">window.$ = window.jQuery = require('jquery');</script>
当我通过脚本 src 包含 jQuery 时,我得到了同样的错误(jQuery 版本 3.3.1)
例如调用$("#loading-overlay").fadeOut(200);
原因:
Uncaught TypeError: (Animation.tweeners[prop] || []).concat is not a function
at createTween ([PATH]/node_modules/jquery/dist/jquery.js:6848)
at Object.defaultPrefilter ([PATH]/node_modules/jquery/dist/jquery.js:7021)
at Animation ([PATH]/node_modules/jquery/dist/jquery.js:7160)
at HTMLDivElement.doAnimation ([PATH]/node_modules/jquery/dist/jquery.js:7293)
at Function.dequeue ([PATH]/node_modules/jquery/dist/jquery.js:4376)
at HTMLDivElement.<anonymous> ([PATH]/node_modules/jquery/dist/jquery.js:4418)
at Function.each ([PATH]/node_modules/jquery/dist/jquery.js:354)
at jQuery.fn.init.each ([PATH]/node_modules/jquery/dist/jquery.js:189)
at jQuery.fn.init.queue ([PATH]/node_modules/jquery/dist/jquery.js:4411)
at jQuery.fn.init.animate ([PATH]/node_modules/jquery/dist/jquery.js:7304)
我只对 Electron(4.0 版)有这个问题。有谁知道这是什么原因造成的?
解决方案
好吧,这对我来说是愚蠢的。自动完成使我将方法“each”添加到 Object 原型而不是我的自定义类......这显然使 jQuery 感到困惑,因为它在 Animation.tweeners 中找到了属性“each”(因为它在所有对象中)。
但我了解到,当遇到一个真正令人困惑且毫无意义的错误时,请检查您是否不小心覆盖了您不想更改的原型......
推荐阅读
- python - 用于训练考虑 keras 中最后一层的网络
- c# - Entity Framework Core 没有在我的数据库中创建表
- excel - 如何遍历下拉列表中的选项?
- reactjs - “链接到”锚点的替代图像
- reactjs - 添加对网站的反应:如何导入外部节点模块?
- javascript - 重复字体真棒图标导致潜在的角度内存不足崩溃[不是特定于浏览器]
- f# - F# .NET Core 2.1 简单的 crud 应用程序:控制器未注册
- excel - 筛选至少拥有 3 种特定产品的公司
- javascript - 如何批准用户注册 Firebase?
- jestjs - 开玩笑,多个测试文件的单一设置?