我正在努力在TypeScript中创建一个局部变量。ColDef是agGrid中的一种类型。
我可以创建一个ColDefs数组,只有一个条目,然后抓取它…但是我似乎无法理解
的正确语法。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'仅指类型,但在这里被用作值。
声明一个ColDef对象的正确语法是什么?
(我意识到这是一个新手的TS问题,所以类型)
您试图像使用class
一样使用Interface
出口界面ColDefextends AbstractColDef, IFilterDefColDef github
如果你想为一个接口创建一个对象:
let obj: ColDef = { /* properties */ }
这可以工作,因为创建的对象只需要在ColDef接口中指定一组属性。