如何使用REST调用的结果动态初始化CellEditor

时间:2019-02-05 13:46:22

标签: angular ag-grid

我正在开发一个使用Angular和Ag-Grid的应用程序。

我有一列定义如下:

  columnDefs = [
        ...
        { 
          headerName: 'LANG', field:'lang', 
          autoHeight: true,cellClass: 'cell-wrap-text',sortable: false, filter: true, editable: true,
          cellEditor : 'agSelectCellEditor',
          cellEditorParams : ['English', 'Spanish', 'French', 'Portuguese', '(other)'];


        },
       ...

        ];

所以一切正常,在编辑模式下,我得到了带有不同选项(“英语”,“西班牙语”,“法语”,“葡萄牙语”,“(其他)”)的组合框。 我的问题是我需要获得调用REST WS的那些选项。

因此,我尝试在Component(optionValues)中定义一个变量,并在“ ngOnInit”方法中填充它,如下所示:

optionValues :  any;

columnDefs = [
        ...
        { 
          headerName: 'LANG', field:'lang', 
          autoHeight: true,cellClass: 'cell-wrap-text',sortable: false, filter: true, editable: true,
          cellEditor : 'agSelectCellEditor',
          cellEditorParams : this.optionValues,


        },
       ...

        ];

ngOnInit(){
  this.optionValues = this.http.get('http://localhost:8002/myservice');

}

但是它没有用,这是怎么了?我必须使用其他方法吗?

你能帮我吗?

1 个答案:

答案 0 :(得分:1)

您可以在http内部初始化网格设置,

this.http.get(...).subscribe(v=>{
  this.gridOptions = {
    columnDefs: [...]
  };
  this.optionValues=v;
});