是否可以为纯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类。)
答案 0 :(得分:4)
您可以简单地将其声明为一个类:
declare class Foo{
bar:string;
constructor(bar:string);
}
var x=new Foo("test"); // x of type foo
x.bar="lala";