Javascript jQuery flot图表生成";未捕获类型错误:e.setTimeout不是函数;带网页包
当我通过网页包包含jquery.flot.resize.js时,会生成“uncaughttypeerror:e.setTimeout不是函数” 这是我的密码Javascript jQuery flot图表生成";未捕获类型错误:e.setTimeout不是函数;带网页包,javascript,jquery,webpack,flot,Javascript,Jquery,Webpack,Flot,当我通过网页包包含jquery.flot.resize.js时,会生成“uncaughttypeerror:e.setTimeout不是函数” 这是我的密码 import "jquery.flot/jquery.flot.js"; import "jquery.flot/jquery.flot.resize.js"; 这使得浏览器控制台中的类型错误如下 Uncaught TypeError: e.setTimeout is not a function 如果它使用标签加载相同的javascr
import "jquery.flot/jquery.flot.js";
import "jquery.flot/jquery.flot.resize.js";
这使得浏览器控制台中的类型错误如下
Uncaught TypeError: e.setTimeout is not a function
如果它使用标签加载相同的javascript,那么它工作得很好。
此错误仅发生在网页包上 在我的例子中,以下语法解决了这个问题:
import * as [some-name] from '[reference to your file or directory]';
该错误是由“jquery.flot.resize.js”中的假设引起的,即
此
包含窗口
,在使用webpack编译时该假设不成立。有问题的代码不是源代码本身,而是复制和粘贴依赖项(jQuery resize事件)中的代码
当他们粘贴不同版本的依赖项时。这一变化于年发布
如果您需要使用早期版本的flot,可以使用webpack解决问题,例如(将导入加载程序添加到应用程序(开发)依赖项中):
/./webpack.config.js
module.exports={
...
模块:{
规则:[
{
test:require.resolve(“jquery.flot/jquery.flot.resize.js”),
使用:“导入加载程序?此=>窗口”
}
]
}
};
您是否可以在一个数据库中重现错误?