如何描述类的返回值?
Posted
技术标签:
【中文标题】如何描述类的返回值?【英文标题】:How to describe return value of Class? 【发布时间】:2021-07-17 02:03:43 【问题描述】:我需要在 typescript 中明确描述函数的返回类型。碰巧返回值总是一个类。不幸的是,以下方法不起作用:
interface IFoo
bar()
class Foo implements IFoo
public bar()
function func(): IFoo
return Foo
“typeof Foo”类型中缺少属性“bar”,但在类型中是必需的 'IFoo'.ts(2741)
而且,这也会产生错误:
function func(): Foo
return Foo
“typeof Foo”类型中缺少属性“bar”,但在类型中是必需的 'Foo'.ts(2741)
是否可以给函数一些有意义的返回值描述?
【问题讨论】:
你能举个例子说明应该如何调用func()
函数/如何使用它的返回值吗?
你应该看看你的代码在the Playground中做了什么
1.定义 IFoo.bar()
返回的内容。 2. 更新Foo.bar()
以返回相同的内容。 3.将func()
改为return new Foo();
。
【参考方案1】:
你需要返回一个类Foo
的实例,它实现了IFoo
。当您只是 return Foo
时,您返回的是类的定义,而不是类的实例。
interface IFoo
bar()
class Foo implements IFoo
public bar()
function func(): IFoo
return new Foo()
【讨论】:
以上是关于如何描述类的返回值?的主要内容,如果未能解决你的问题,请参考以下文章