ag-grid排序不适用于其他第三方插件

时间:2018-07-30 10:35:05

标签: sorting ag-grid stimulsoft

ag-grid排序不适用于其他第三方插件。 用于报告工具的Stimulsoft report.js。

please find plunkr link for the same.

<html>
<head>
      <script src="https://unpkg.com/ag-grid@13.3.1/dist/ag-grid.js"></script>
      <script src="https://cdn.jsdelivr.net/npm/stimulsoft-reports-js@2018.2.3/stimulsoft.reports.js"></script>

 </head>
 <body>

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

</body>
</html>    

2 个答案:

答案 0 :(得分:0)

您的问题很可能是由于以下事实:“ Stimulsoft Reports.JS”严重修改了JavaScript中的本机原型(至少String / Array / Object),这是几乎总是一个可怕的主意。

换句话说,他们的代码是错误的。

以下是一些支持链接:

至于如何解决,不知道。要弄清楚这是一个漫长的调查。

尝试将刺激轴的东西放到iframe中,这样单独污染自己就可以很高兴。

我什至不确定这是原因,但可能是原因。也许ag-grid可以采取一些措施来解决这些问题,但这不是他们的问题。无论发生什么,都是Stimulshaft的错。

答案 1 :(得分:0)

在农业网格中

      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>