我已经整理了一个 stackblitz 演示,我试图在react-popout-component内 渲染一个Kendo React Grid,这是一个弹出窗口组件。该演示在 Chrome、Opera 和 Firefox 中运行良好,但在 Edge 和 IE11 中失败,因为 getComputedStyle 返回 null。
错误发生在以下文件中:
node_modules\@progress\kendo-react-grid\dist\es\header\Header.js
更准确地说,在以下函数中:
Header.prototype.componentDidMount = function () {
this.setState({});
var scrollbarWidth = (new BrowserSupportService()).scrollbarWidth;
var rtl = this.element && (getComputedStyle(this.element).direction === 'rtl') || false;
var padding = Math.max(0, scrollbarWidth - 1) + 'px';
var right = rtl ? 0 : padding;
var left = rtl ? padding : 0;
this.divStyle = { padding: "0 " + right + " 0 " + left };
};
在 IE11 和 Edge 中,getComputedStyle(this.element) 为网格标题 (k-grid-header) 返回 null。
我必须承认我迷路了:)