无法实例化 ColDef 变量

Trouble instantiating ColDef variable

我正在努力在 TypeScript 中创建局部变量。 ColDef 是 agGrid 中的一种类型。

我可以创建一个只有一个条目的 ColDef 数组,然后抓取那个... 但我似乎无法简单地得出正确的语法

    import { ColDef } from 'ag-grid-community';

foo(){

    let try1 = new ColDef(  {field : this.fieldName}); //get error
    let try2 = new ColDef(   this.fieldName );  //get error 
    const try3 = new ColDef(   this.fieldName );  //get error 

   
    let myCDs : ColDef[] = [
            {field : this.fieldName}
          ];
    let myCD : ColDef = myCDs[0];  //and yet this works...  

}

无论我尝试什么,我都会得到

src/app/helpers/agGrid/AgColDef.ts(20,31) 中的错误:错误 TS2693:'ColDef' 仅指类型,但在此处用作值。

仅声明 1 个 ColDef 对象的正确语法是什么?

(我意识到这是一个新手 TS 问题,所以 tyia)

您正在尝试像 class 一样使用 Interface

export interface ColDef extends AbstractColDef, IFilterDef ColDef github

如果要为接口创建一个对象:

let obj: ColDef = { /* properties */ }

这是可行的,因为创建的对象只需要 ColDef 接口中指定的一组属性。