ag-grid sort不能与另一个第三方插件一起使用

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

ag-grid sort不能与另一个第三方插件一起使用。 Stimulsoft report.js用于报告工具。

please find plunkr link for the same.

<html>
<head>
      <script src="https://unpkg.com/[email protected]/dist/ag-grid.js"></script>
      <script src="https://cdn.jsdelivr.net/npm/[email protected]/stimulsoft.reports.js"></script>

 </head>
 <body>

<div id="myGrid" style="height: 100%;" class="ag-fresh"></div>
<script src="main.js"></script>

</body>
</html>    
sorting ag-grid stimulsoft
2个回答
0
投票

你的问题很可能是由于“Stimulsoft Reports.JS”在JavaScript中严重修改了原生原型(至少String / Array / Object),这几乎总是一个糟糕的主意。

换句话说,他们的代码很糟糕。

以下是一些支持链接:

至于如何解决它,不知道。这是一个长期的调查,以解决这个问题。

尝试将刺激的东西放在iframe中,这样可以让自己感到高兴和独立。

我甚至不确定这是原因,但可能是。可能是ag-grid可以做些什么来修复它们,但这不是他们的问题。无论发生什么,都是Stimulshaft的错。


0
投票

在ag-grid中

      ComponentUtil.toNumber = function(value) {
            if (typeof value === 'number') {
                return value;
            } else if (typeof value === 'string') {
                return Number(value);
            } else {
                return undefined;
            }
        }

并且在stimulsoft

Object.prototype.toNumber = function() {
   if (this.sti_is(String) && this.indexOf(",") >= 0)
      return Number(this.replaceAll(",", "."));
   return Number(this)
}

所以由于这种冲突,排序是无法做到的。

然后我添加下面的行然后解决了我的问题。

<script>
     Object.prototype.toNumber = undefined;
</script>
© www.soinside.com 2019 - 2024. All rights reserved.