Javascript 财产';名称';不存在于类型';{}';-有棱角的

Javascript 财产';名称';不存在于类型';{}';-有棱角的,javascript,angular,typescript,Javascript,Angular,Typescript,我已经检查过了,该属性确实存在,但它返回错误name不是{}的属性。我试图将这个对象分配给一个包含其属性的接口,但是它也表示我不能将{}分配给它。这有什么问题吗 这是不起作用的代码 this.companiesArray[0].employees[0].name返回错误name不是{}的属性 这是我正在处理的示例数据,一组对象(公司) [ { “雇员”:[ { “姓名”:“艾米”, “性别”:“女性”, “级别”:“2” }, { “姓名”:“克里斯”, “性别”:“男性”, “级别”:“4”

我已经检查过了,该属性确实存在,但它返回错误
name不是{}
的属性。我试图将这个对象分配给一个包含其属性的接口,但是它也表示我不能将{}分配给它。这有什么问题吗

这是不起作用的代码
this.companiesArray[0].employees[0].name
返回错误
name不是{}
的属性

这是我正在处理的示例数据,一组对象(公司)

[
{
“雇员”:[
{
“姓名”:“艾米”,
“性别”:“女性”,
“级别”:“2”
},
{
“姓名”:“克里斯”,
“性别”:“男性”,
“级别”:“4”
}
],
“公司”:“XYZ”,
“塔”:“2号塔”
},
{
“雇员”:[
{
“姓名”:“本”,
“性别”:“男性”,
“级别”:“1”
},
{
“姓名”:“莎拉”,
“性别”:“女性”,
“级别”:“1”
}
],
“公司”:“ABC”,
“塔”:“3号塔”
}

]
这是一个编译器错误,当您使用泛型签名调用函数时,如果您没有为函数调用指定类型,并且编译器无法推断类型,则会推断类型{}


您需要在函数调用中定义类型,以便编译器知道该类型。类似于yourService.get(而不是yourService.get(

创建员工界面

export interface Employee {
    name: string;
    gender: string;
    level: string;
}
并将公司改为

export interface Company {
    employees: Employee[],
    company: string,
    tower: string
}

请提供您的角度代码。您的
型号
接口
组件
等,以及与您的问题相关的任何内容。顺便说一句,我已经测试了此代码
此公司阵列[0]。员工[0].name
以及您的示例数据。一切都很好。我得到了预期的名称“Amy”。信息不足以得出错误的结论。现在,我猜错误来自
这个
变量。然后,您应该提供您的角度代码,您试图从中提取
name
的值。角度代码请轻松,合并您的答案并删除一个