如何使用CMS页眉和页脚向Spartacus添加角度页面?

时间:2020-06-09 05:48:26

标签: angular spartacus-storefront

需要在我的Spartacus App中创建几个独立页面,这些页面不是通过CMS路由创建的,而是Angular页面(其路由在Angular中)。但是这些页面需要像其他CMS页面(PDP,PLP等)一样具有页眉和页脚。是否可以从CMS页面中扩展页眉和页脚公共组件以用于Angular页面?

1 个答案:

答案 0 :(得分:1)

最简单的方法是使用包含页眉和页脚的模板创建一个空的CMS页面。它本身的页面不需要组件,因为您将直接用角度对它们进行硬编码。

最简单的方法是为这些页面设置 root 路由,例如“ content”:

CMS内容页面应配置为/content,以便所有这些URL都将与此CMS内容页面一起支持。

此外,您应该在应用中配置与这些路线匹配的角度路线。您可以使用标准的角度布线功能,包括子路径。后者可能会避免对同一CMS页面的重复调用(但这是从顶部开始的。)


另一种方法是使用cmsPageGuard,它需要一个带有pageLabel的数据对象。这具有以下优点:(1)将店面URL与CMS中的页面标签分离,并且(2)无需使用“根路由”。缺点是,硬编码的data.pageLabel必须与CMS中的page.label相对应。这是一个片段:

{
    path: 'demo/static/page',
    component: PageLayoutComponent,
    data: { pageLabel: '/faq' },
    canActivate: [CmsPageGuard],
}