为非Typescript类声明Typescript接口

时间:2013-09-14 21:22:46

标签: javascript typescript

是否可以为纯JavaScript类声明TypeScript接口?

e.g。

function Foo(bar)
{
  this.bar=bar;
}

var x=new Foo("test"); // x is shown as any

我想为Foo声明一个接口:

interface IFoo
{
  bar: string;
}

但我无法弄清楚如何宣布它。

function Foo(bar: string) : IFoo
{
  this.bar=bar;
}

给我“'Foo'声明为非void返回类型,但没有返回表达式。”

(我不想将Foo重写为TypeScript类。)

1 个答案:

答案 0 :(得分:4)

您可以简单地将其声明为一个类:

declare class Foo{
    bar:string;
    constructor(bar:string);
}

var x=new Foo("test"); // x of type foo
x.bar="lala";