在IE11(非Edge模式)的Windows 10上渲染时,ExtJS 6数据视图中的问题

问题描述 投票:1回答:1

背景:我们已经使用ExtJS 6来开发我们的应用程序。在其中一种视图中,我们在“选项卡”面板中使用了dataview。为此数据视图启用了可滚动。我们已将X-UA兼容模式指定为Edge。工作条件:Windows 7 + IE11(边缘模式)+智能卡身份验证不起作用的条件:Windows 10,IE11(非边缘模式)+虚拟智能卡身份验证(尽管无法确定此条件)

问题:此视图在Chrome和IE11(默认为“边缘”模式)的Windows 7平台上呈现完美。在IE 11的Windows 10平台上渲染时,它会大喊问题。在此平台上,IE11在IE11浏览器中没有Edge模式(可用的单独Edge浏览器),因此默认情况下,应用程序本身以IE11模式运行。在甚至在加载数据之前呈现此视图时,它也会引发错误,因为“无法从null或未定义访问n.dom”(我可能未编写确切的错误描述)。

分析:经过分析发现,dataview的刷新方法被以某种方式调用,并且找不到其目标元素。错误的确切位置在me.getTargetEl()的dataview的刷新方法中。在进行故障排除时,发现滚动功能(由scrollable:true启用)甚至在呈现视图之前都在尝试刷新视图,因此找不到目标DOM元素。

解决方案:虽然,我们没有在ExtJS中找到解决方案,但是我们禁用了dataview的可滚动性,并使用了溢出属性按样式呈现了滚动。例如样式:{溢出:“自动”}这解决了添加滚动而不启用滚动时的问题。

extjs windows-10 internet-explorer-11 extjs6 dataview
1个回答
0
投票

发布解决方案作为答案。

分析:在分析中发现,数据视图的刷新方法正在以某种方式被调用,并且找不到其目标元素。错误的确切位置在me.getTargetEl()的dataview的刷新方法中。在进行故障排除时,发现滚动功能(由scrollable:true启用)甚至在呈现视图之前都在尝试刷新视图,因此找不到目标DOM元素。

解决方案:尽管我们没有在ExtJS中找到解决方案,但是我们禁用了dataview的可滚动性,并使用了溢出属性按样式呈现了滚动。例如样式:{溢出:'自动'}这解决了添加滚动而不启用滚动的问题。

© www.soinside.com 2019 - 2024. All rights reserved.