在Typeular中使用Angular 2中的类型

时间:2016-12-02 23:15:22

标签: javascript angular typescript

我的AppComponent中有以下方法:

connectToTweetStream() {
  this._tweetService.connectToStream()
    .subscribe(
      tweet => {
        this.tweets.push(tweet);
      },
      error => this.errorMessage = <any>error
    );
}

当我在AppComponent类的顶部将tweets声明为任何:tweets: any[] = [];的数组时,一切都很好。不过,我希望tweets属于Tweet类型,因此tweets: Tweet[] = [];

当我进行此更改时,我收到错误Argument of type '{}' is not assignable to parameter of type 'Tweet'。事实上,当我将鼠标悬停在上面代码第4行的tweet上时,它的类型为{}。如何解决此问题,以便tweets可以是Tweet个对象的数组?

1 个答案:

答案 0 :(得分:0)

在您的订阅中投射每个项目的类型

<div style="float:right; height:100%;padding-right:1%"> 
<button style="display:inline-block; height:70%;background-color:green; color:white;border:none; padding:0;">
<span style="display:inline-block; max-width:10%; text-overflow:ellipses;overflow:hidden; max-height:100%;text-align:center;white-space:no-wrap;">John John</span>
</button>
</div>
</div>