嵌套的多维darray角度模型

问题描述 投票:0回答:1

我正在开发一个原型来展示我们如何从“盒子”驱动的市场中改变我们的商业模式,并将其转变为订阅业务。我们使用Zuora中心平台来管理我们的订阅。数据通过REST提供。 (见https://www.zuora.com/developer/api-reference/#tag/Catalog)。我正在使用我从ZUORA调用的数据来调整定价。

我有以下n级数据模型:

export class OrderInTake {
  productID: string;
  productName: string;
  productRatePlans: ProductRatePlans[];
}

export class ProductRatePlans extends Products {
  'id': string;
  'status': string;
  'name': string;
  'description': string;
  'effectiveStartDate': string;
  'effectiveEndDate': string;
  'PriceType__c': string;
  'PriceCode__c': string;
  'CurrencyOfBasePrice__c': string;
  'BasePrice__c': string;
  'productRatePlanCharges': ProductRatePlanCharges[];
}

export class ProductRatePlanCharges extends ProductRatePlans {
    'id': string;
    'name': string;
    'type': string;
    'model': string;
    'uom': string;
    'pricingSummary': [];
    'pricing': Pricing[];
    'defaultQuantity': string;
    'applyDiscountTo': string;
    'discountLevel': string;
    'discountClass': string;
    'productDiscountApplyDetails': [ ];
    'endDateCondition': string;
    'upToPeriods': string;
    'upToPeriodsType': string;
    'billingDay': string;
    'listPriceBase': string;
    'billingTiming': string;
    'billingPeriod': string;
    'billingPeriodAlignment': string;
    'specificBillingPeriod': string;
    'smoothingModel': string;
    'numberOfPeriods': string;
    'overageCalculationOption': string;
    'overageUnusedUnitsCreditOption': string;
    'unusedIncludedUnitPrice': string;
    'usageRecordRatingOption': string;
    'priceChangeOption': string;
    'priceIncreasePercentage': string;
    'useTenantDefaultForPriceChange': string;
    'taxable': string;
    'taxCode': string;
    'taxMode': string;
    'FeatureCode__c': string;
    'triggerEvent': string;
    'description': string;
    'revenueRecognitionRuleName': string;
    'useDiscountSpecificAccountingCode': string;
}

当我需要访问子子数组ProductRatePlanCharges我收到错误消息:'ProductRatePlans []'类型上不存在属性'productRatePlanCharges'。

我想我需要更改模型 - 如何更改模型以便能够访问子子数组?

问题的背景:我需要在每个ProductRatePlanCharges中推送2个新对象以存储在listprice旁边,默认数量是折扣价格和调整后的数量。如果有一个更聪明的方法,而不是推动每个费率计划的价值,请分享。

感谢您的支持。

angular
1个回答
0
投票

基于你的模型OrderInTakeproductRatePlans这是一个数组,然后数组中的每个项目都有另一个名为productRatePlanCharges的数组,所以为了访问它你需要遍历这样的

例如OrderInTake.productRatePlans[0].productRatePlanCharges =>这也是数组

或者OrderInTake.productRatePlans.forEach(item => item.productRatePlanCharges // do something with it)

© www.soinside.com 2019 - 2024. All rights reserved.