0

SAP Spartacus を使用すると、PDP 内で使用されるさまざまなコンポーネントをオーバーライドできます。例 : ProductSummaryComponent (cx-product-summary)。

これらは CMS コンポーネントであるため、ConfigModule を使用してオーバーライドするのは非常に簡単です。

私の質問は、コントローラーが返す可能性のある追加の属性をどのように使用できるかについてです。

例 - 属性「manufacturedYear」を ProductModel に追加し、それを bean xml を介して ProductData にも含めるとします。Data オブジェクトにあるので、ProductWsDTO に追加して DTO マッピングに追加すると、/product/{code} API 呼び出しで返されます。

UI には、次のような製品があります。

product$: Observable = this.currentProductService.getProduct();

したがって、「Product」は @spartacus/core の「product.model.ts」で利用可能なモデルです。実際の API 呼び出しを行う基礎となるサービスを使用して、新しい「manufacturedYear」を使用できるように、これをどのように拡張できますか?

モデルを拡張するだけで、基礎となるサービスを使用して API 呼び出しを行い、追加の属性を取得することを意図しています。

ご協力いただきありがとうございます

4

1 に答える 1

1

以下は、製品モデルを拡張する例であり、ローディング スコープを使用してバックエンドから追加の属性をフェッチすることを提案しています: Spartacus での製品モデルの拡張

それに基づいて、次のことができます。

import { Product as CxProduct } from '@spartacus/core';

export interface Product extends CxProduct {
  manufacturedYear: number;
}
于 2021-10-26T09:55:51.477 に答える