【发布时间】:2017-04-14 01:12:43
【问题描述】:
我有一个实现单个属性和类数组的类:
提供类
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);
}
}
OfferRegion 类
export class OffertRegion {
public idOffert: number;
public idOffertRegion: number;
public Region: string;
public intOrder: number;
constructor(values: Object = {}) {
Object.assign(this, values);
}
}
OfferProduct 类
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”类型上不存在属性“Products”。
产生错误的代码是这样的:
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 !!!
谢谢
【问题讨论】:
-
你能把回复放在这里吗?
-
我不认为它是响应问题,即使我尝试这两个代码行我也会收到错误:var ooo: OffertProduct[]; this.offert.Products = ooo;我现在整合这个问题。
标签: angular typescript compiler-errors