3

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

例如

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 类。)

4

1 回答 1

4

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

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

var x=new Foo("test"); // x of type foo
x.bar="lala";
于 2013-09-14T22:59:56.100 回答