IHeaderAngularComp 改变参数

IHeaderAngularComp on changes params

我正在使用 ag grid / angular 并且我已经成功地重新定义了自定义 header 来自 IHeaderAngularComp。 在 cusotm class 内部,我使用 agInit(params),如文档中所述,以获取我在网格外设置的自定义参数。 它工作得非常好,除了我在参数内部使用的数据来自 http 请求,但是在请求解析时,headers 已经创建,并且对 agInit 的调用早已消失...... 所以我对 agChange 或类似工具的使用感到好奇?

这里是自定义 class(真的 classic):

export class CustomMonthHeaderComponent implements IHeaderAngularComp  {

   private params: any;

  constructor() { }

  agInit(params) 
  {
     this.params = params; // this is not yet fully prepared at this time
  }

  // proposal / similar option : 
  agChange(params) 
  {
     this.params = params; // this is ok now yeah !
  }
}

这真的与 ag-grid 无关,只是普通的旧 JS。

您可以将承诺作为参数传递,并在它解析时根据需要更新字段

export class CustomMonthHeaderComponent implements IHeaderAngularComp  {

  private params: any;
  private someField = "";

  constructor() { }

  agInit(params) 
  {
     this.params = params; // this is not yet fully prepared at this time
     this.params.getStuffForHeadersPromise.then((data) => {
         // this is ok now yeah !
         this.someField = data.someFieldValue;
     });
  }
}