javascript - 折叠在 IE11 上不起作用(Object.keys:参数不是对象)
问题描述
可折叠(隐藏和显示数据)在其他浏览器(opera,chrome)中工作正常。但是来到 IE onclick
(如图所示的公司)数据正在显示(扩展),单击相同的标签/按钮(公司)数据是不隐藏。在控制台错误显示为Object.keys: argument is not an Object
我发现相关问题Object.keys not working in Internet Explorer here 但不适用于我的代码(对我没有帮助)。请帮助我,解决这个问题?
提前致谢。
解决方案
由于这被标记为“bootstrap-4”,我假设它与Bootstrap 4.1.0 中的这个错误有关,其中所有可折叠项在 IE11 中都是不可关闭的。
更具体地说,是 Bootstrapsjs/src/collapse.js
中的第 334 行导致了问题。它由引用此页面更改
...typeof config === 'object' && config
:“
...typeof config === 'object' && config ? config : {}
如果config 不是对象,则为 false。在 IE 中,Object.keys(false) 导致错误,而现代浏览器返回 []”
该错误已在后续版本中修复。我最近在一个项目中遇到了同样的问题,将 Bootstrap 更新到 4.1.1 版解决了这个问题。
(使用(或更高版本)更新 package.json并运行。)
"bootstrap": "v4.1.1"
npm install
TL;DR:这是一个引导程序错误。将 Bootstrap 更新到 4.1.1 或更高版本。
推荐阅读
- python - 如何将非重叠数据帧矢量化为重叠移位数据帧?
- docker - 带有 VPN 代理的 Docker 容器无法连接到同一 docker 网络中的其他容器
- terraform - Terraform模板文件模板中数值与两个变量的比较
- reactjs - redux坚持不在异步存储中存储存储
- sql-server - 在存储过程中以字符串形式输入 SQL 脚本
- android - 使用 Volley 时的 ANR 效果
- sql - 如何获得最大的日期记录并动态乘以该记录
- c# - System.net.http VS 2019源码提取
- c++11 - 为什么与整数的比较适用于 nullptr?
- c++ - 无序地图与地图