2017-04-13 212 views
2

的类型阵列的访问对象元素我有这个类,它实现单个属性和类的数组:Angular2 /打字稿 -

offert类

import {OffertRegion} from './offert-region'; 
import { OffertProduct } from './offert-product'; 

export class Offert { 
    public idOffert: number; 
    public OffertCode: string; 


    public Regions: OffertRegion[]; 

    public Products: OffertProduct[]; 

constructor(values: Object = {}) { 
     Object.assign(this, values); 
    } 

} 

OffertRegion类

export class OffertRegion { 

    public idOffert: number; 
    public idOffertRegion: number; 
    public Region: string; 
    public intOrder: number; 

    constructor(values: Object = {}) { 
     Object.assign(this, values); 
    } 
} 

OffertProduct class

export class OffertProduct { 

    public idOffert: number; 
    public OffertCode: string; 
    public idOffertRegion: number; 
    public Region: string; 
    public intRegionOrder: number; 
    public idOffertRow: number; 
    public idProduct: number; 
    public ProductCode: string; 
    public Product: string; 
    public Seats: number; 
    public ImagePath: string; 
    public Qty: number; 


    constructor(values: Object = {}) { 
     Object.assign(this, values); 
    } 
} 

我不知道为什么,当我加载的页面我得到这个编译错误,在控制台:

offert-detail.component.ts(55,21):房产“产品”上不存在类型'Offert'。

这件作品的生成错误代码是这样的:

s.subscribe(
     res => { 
     console.log('header') 
     console.log(res.header); 
     console.log('regions') 
     console.log(res.regions); 
     console.log('products') 
     console.log(res.products); 

     this.offert = res.header;    
     this.offert.Regions = res.regions; //this is line 53 

     this.offert.Products = res.products; // this is line 55!!! 
     }, 
     error => this.errorMessage = <any>error 
    ); 

53线和55线是相似的。为什么第一部作品,第二个没有?

即使我尝试只是这两个简单的线我得到的错误:

var rrr: OffertRegion[]; //OK 
this.offert.Regions = rrr; //OK 

var ooo: OffertProduct[]; //OK 
this.offert.Products = ooo; //ERROR !!! 

感谢

+1

你能回应吗? – Akanksha

+0

我不认为它的回应有问题,即使我尝试这两个代码行我得到的错误: var ooo:OffertProduct []; this.offert.Products = ooo; 我现在整合了这个问题。 – DarioN1

回答

0

我终于解决了这个问题...

我刚刚停止服务器并运行ng再次...

现在它的工作!

可能我已经弄脏了复制/粘贴/重命名文件... Ciao!