在Typescript定义文件中定义类

时间:2016-03-24 22:18:00

标签: typescript

我觉得我正在努力做到这一点非常简单,但我的编译器一直告诉我:“不能使用带有类型缺少调用或构造签名的表达式的new。”

我所要做的就是在定义文件中定义一个类,而不是一个接口。我的代码的缩写版本如下:

declare module jsforce {

    declare class Connection {

        constructor(params: ConnectionParams);

    }
}

declare module "jsforce" {
    var jsforce: jsforce.JSForce;
    export = jsforce;
}

在我收到错误的页面上:

/// <reference path="../typings/jsforce.d.ts" />
import jsforce = require('jsforce');

// Wapper for JSForce
export class JSForce {

  public connection: jsforce.Connection;

  constructor() {

  }

  connect(params: jsforce.ConnectionParams) {
    this.connection = new jsforce.Connection({})
  }

}

我做错了什么?

1 个答案:

答案 0 :(得分:0)

以下编译与最新的打字稿完全一致:

jsforce.d.ts:

declare module jsforce {

    class Connection 
    {
        constructor(params: string);
    }
}

declare module "jsforce" 
{
    export = jsforce;
}

app.ts

import jsforce = require('jsforce');

// Wapper for JSForce
export class JSForce 
{

    public connection: jsforce.Connection;

    constructor() 
    {

    }

    connect(params: jsforce.Connection) 
    {
        this.connection = new jsforce.Connection('12')
    }
}