Typescript 有没有在接口中声明getter的方法?
我的课程如下(仅展示部分):Typescript 有没有在接口中声明getter的方法?,typescript,typescript1.5,Typescript,Typescript1.5,我的课程如下(仅展示部分): 导出类LinkedListNode扩展windward.WrObject实现了LinkedListNode{ public get next():LinkedListNode{ 返回此。_next===此。_列表。_first?null:此。_next; } } 因此,在接口中,我想将next声明为一个方法。但是,以下情况不起作用: export interface ILinkedListNode<t> { get next() : Li
导出类LinkedListNode扩展windward.WrObject实现了LinkedListNode{
public get next():LinkedListNode{
返回此。_next===此。_列表。_first?null:此。_next;
}
}
因此,在接口中,我想将next声明为一个方法。但是,以下情况不起作用:
export interface ILinkedListNode<t> {
get next() : LinkedListNode<t>;
}
导出接口ILinkedListNode{
get next():LinkedListNode;
}
以下内容确实有效,但不准确:
export interface ILinkedListNode<t> {
next : LinkedListNode<t>;
}
导出接口ILinkedListNode{
下一步:LinkedListNode;
}
有没有在接口中声明getter的方法?getter不同于成员变量,例如,在发布对象时,它不会传递给web工作人员
谢谢-dave不,虽然这在其他语言中是可能的,例如,但在TypeScript中目前是不可能的 如果您想要这种行为,最好将其作为一种方法:
export interface ILinkedListNode<t> {
getNext(): LinkedListNode<t>;
}
导出接口ILinkedListNode{
getNext():LinkedListNode;
}
否,尽管这在其他语言(如)中是可能的,但在TypeScript中目前是不可能的
如果您想要这种行为,最好将其作为一种方法:
export interface ILinkedListNode<t> {
getNext(): LinkedListNode<t>;
}
导出接口ILinkedListNode{
getNext():LinkedListNode;
}
在写这篇文章的时候,没有办法完成你想要的
有一个日期为2014年7月的功能,该功能将在他们实施后立即可用
要~simulate~满足您的需求,唯一的方法就是按照David Sherret在回答中所说的做:创建一个getter方法
export interface ILinkedListNode<t> {
getNext(): LinkedListNode<t>;
}
导出接口ILinkedListNode{
getNext():LinkedListNode;
}
尽管如此,我还是建议您现在只在界面内创建属性,并在将来可用时将其更改为~readonly~或~get~版本。在撰写本文时,无法实现您想要的功能 有一个日期为2014年7月的功能,该功能将在他们实施后立即可用 要~simulate~满足您的需求,唯一的方法就是按照David Sherret在回答中所说的做:创建一个getter方法
export interface ILinkedListNode<t> {
getNext(): LinkedListNode<t>;
}
导出接口ILinkedListNode{
getNext():LinkedListNode;
}
尽管如此,我建议您现在只在界面内创建属性,并在将来可用时将其更改为~readonly~或~get~版本。问题在于这两个版本并不相同。我们正在从web workers向传递对象,并且传递了一个成员变量,但没有传递getter。我们使用接口来定义我们在这些消息中接收到的内容,在这种情况下,将其添加为成员是不准确的。@DavidThielen听起来好像您可以在不希望getter可用的地方完全不使用它。@SteveFenton问题是我们真的希望在某些地方使用接口来设置链表。但要做到这一点,它需要列出所有公共方法。然而,这妨碍了正确处理传递给web worker或从web worker传递来的对象。这是一个有点不寻常的用例,但为了让这一切都正常工作,我们需要在接口中显式地使用它作为getter。哦,好吧……问题是这不一样。我们正在从web workers向传递对象,并且传递了一个成员变量,但没有传递getter。我们使用接口来定义我们在这些消息中接收到的内容,在这种情况下,将其添加为成员是不准确的。@DavidThielen听起来好像您可以在不希望getter可用的地方完全不使用它。@SteveFenton问题是我们真的希望在某些地方使用接口来设置链表。但要做到这一点,它需要列出所有公共方法。然而,这妨碍了正确处理传递给web worker或从web worker传递来的对象。这是一个有点不寻常的用例,但为了让这一切都正常工作,我们需要在接口中显式地使用它作为getter。哦,好吧。。。