错误TS2322:类型“对象”不能分配给“联系人”类型。角

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了错误TS2322:类型“对象”不能分配给“联系人”类型。角相关的知识,希望对你有一定的参考价值。

我想运行我的项目以保存我前面的联系结束我在我的IDE webStorm ERROR src / app / new-contact / new-contact.component.ts(24,9)中读到了这个错误:错误TS2322:输入'对象'不能指定为“联系人”类型。 “对象”类型可分配给极少数其他类型。您的意思是使用“任何”类型吗? “对象”类型中缺少属性“id”。

在行new-contact.component.ts(24,9)(at .subscribe((data))我有这个代码

saveContact(){
this.contactService.saveContact(this.contact)
  .subscribe((data)  => {
    this.contact = data;
    this.mode = 2;
  }, err=>{
    console.log("ErReUr : "+err);
  });

}

我有服务代码

saveContact(contact: Contact){
return this.http.post("http://localhost:8080/addPerson", contact);
}

我在项目中有一个班级但在项目中的文件中这是代码

export class Contact {
   any = null;
   nom: string = '';
   prenom: string = '';
   email: string = '';
   tel: number = 0;
   photo: string = '';
   dateNAissance:Date;
 }

问题出在联系人和对象的id中

帮帮我,我想要一个解决方案,谢谢:)

答案

尝试编写您的服务:

saveContact(contact: Contact){
  return this.http.post("http://localhost:8080/addPerson", contact) as Observable<Contact>;
}

I.E.将其作为类型为Contact的Observable返回。

以上是关于错误TS2322:类型“对象”不能分配给“联系人”类型。角的主要内容,如果未能解决你的问题,请参考以下文章

打字稿 - 类型'值:数字;日期:日期; ' 不可分配给类型 'Record[]'。 ts(2322)

如何在chartjs数据集中为Object []使用x值中的日期,我收到一个错误:'TS2322:类型'字符串'不可分配给类型'数字'。

运行单元测试时,“TS2322:类型 'Timeout' 不可分配给类型 'number'”

react-router-dom TypeScript TS2322:类型'typeof Index'不可分配给类型

带有约束的打字稿泛型不能分配给泛型接口

(打字稿)试图将字体真棒图标作为对象传递给子组件时遇到问题