【问题标题】:equals function in coldef has undefined parametersColdef 中的 equals 函数具有未定义的参数
【发布时间】:2019-08-30 20:46:35
【问题描述】:

我试图在编辑单元格后取消值的更改。流程是:

  • 完成版(onCellValueChanged)
  • 网络服务请求:
  • 如果请求失败取消版本(反转为旧值)。
  • 如果请求没问题,什么都不做

我尝试使用 gridOptions.onCellValueChanged 监听器,它可以工作,但 event.newValue 与 event.oldValue 相同:

this.gridOptions.onCellValueChanged = event => {
         // Here event.newValue == event.oldValue
      }

单元模型是一个对象(不是字符串或简单类型)。 所以我追查了这个问题,也许是在coldef中重新定义了equals:

coldef: {
 /* a lot of def ...*/
 equals: function(object1, object2) {
        console.log("equal : ", object1, object2);
        return object1.Id === object2.Id;
       },
     };

但是这里的日志 object1 和 object2 是未定义的。 这是为什么 ? 还有一个额外的问题:这是取消单元格数据更改的好方法吗?

【问题讨论】:

  • 问题已经answered 几次了
  • @un.spike 谢谢,但仍然不是我要找的……但这让我想到了流程……确实,我的问题是我验证了编辑,然后在 valuechanged 事件中我使用网络服务进行检查,以便能够在此事件结束时取消该更改。

标签: angular ag-grid


【解决方案1】:

你需要在colDef中添加一个valueGetter函数,equals函数从valueGetter函数中获取它的参数

【讨论】:

    猜你喜欢
    • 2015-06-14
    • 1970-01-01
    • 2019-01-02
    • 1970-01-01
    • 2011-06-06
    • 2021-07-09
    • 2018-03-15
    • 2011-09-25
    • 1970-01-01
    相关资源
    最近更新 更多