'{message:string;类型的参数}”不可分配给“ any []”类型的参数

时间:2019-06-19 17:45:57

标签: angular firebase

我正在使用FireBase在LinkedIn学习库中进行一个项目。我已经能够从电影中找出一些更新,但是我仍然坚持。 我收到错误

  

'{message类型的参数:字符串; }”不能分配给类型“ any []”的参数。     对象文字只能指定已知的属性,而“消息”在“ any []”类型中不存在。   从此代码:

   export class AppComponent {
 items: AngularFireList<any[]>;
 msg  =  '';

 constructor(public af: AngularFireDatabase) {
  this.items = af.list('/messages');
 }
 send(chatMsg: string) {
   this.items.push({ message: chatMsg });
   this.msg = '';
 }
    }

错误似乎来自this.items.push({message: chatMsg });

我已经从“ @ angular / fire / database”导入了AngularFireDatabase和AngularFireList;所以我不确定是什么问题。我正在尝试学习Angular,现在迷路了。

2 个答案:

答案 0 :(得分:0)

AngularFireList需要一个表示列表中单个项目的通用参数。当前,您指定列表中的每个项目均为any[]

您可能希望类型定义改为AngularFireList<any>

答案 1 :(得分:0)

基于示例in documentation here,您需要:

items: AngularFireList<any>;

代替items: AngularFireList<any[]>;