我们的后端团队添加了类型为SdPromoCampaignPage的cms页面。他们想要当用户打开的url类型的:baseSite/promo/:promoCode
前端从后端路由/occ/v2/:baseSite/cms/pages?code=super&pageType=SdPromoCampaignPage&lang=ru&curr=RUB
接收cms页面结构时。
我提供CustomCmsPageAdapter而不是斯巴达克斯的CmsPageAdapter
load(pageContext: PageContext, fields?: string): Observable<CmsStructureModel> {
const type: string = pageContext.type;
if (type === SdPageType.PROMO_CAMPAIGN_PAGE) {
return this.loadPromoPage(pageContext);
}
return this.occPageAdapter.load(pageContext, fields);
}
但这还不够,因为在收到cms结构之后,不会呈现页面。在spartacus页面处理程序中,仅对标准页面类型进行硬编码