"Cannot get base site config" 斯巴达克斯错误
"Cannot get base site config" error in Spartacus
我们正在 Spartacus 中使用多站点设置。它工作正常,但是当用户输入 URL 和不正确的 baseSite 时,Spartacus 显示空白页面并在 JS 控制台 Error: Cannot get base site config! Current url (https://www.example.com/xyz/) doesn't match any of url patterns of any base sites.
中抛出错误(xyz
是本例中不正确的 baseSite 标识符)。
有没有办法处理这个错误并重定向用户,例如到 404 在这种情况下找不到页面?
您必须在 SiteContextConfigInitializer
的基础上实现自己的 class 并覆盖方法 resolveConfig
。然后将其添加到模块中的提供程序:{ provide: SiteContextConfigInitializer, useClass: YourSiteContextConfigInitializer }
。不幸的是,我猜你还必须为 isCurrentBaseSite
和 get currentUrl
添加自己的方法(只需复制并重命名),因为它们是私有的。
我们正在 Spartacus 中使用多站点设置。它工作正常,但是当用户输入 URL 和不正确的 baseSite 时,Spartacus 显示空白页面并在 JS 控制台 Error: Cannot get base site config! Current url (https://www.example.com/xyz/) doesn't match any of url patterns of any base sites.
中抛出错误(xyz
是本例中不正确的 baseSite 标识符)。
有没有办法处理这个错误并重定向用户,例如到 404 在这种情况下找不到页面?
您必须在 SiteContextConfigInitializer
的基础上实现自己的 class 并覆盖方法 resolveConfig
。然后将其添加到模块中的提供程序:{ provide: SiteContextConfigInitializer, useClass: YourSiteContextConfigInitializer }
。不幸的是,我猜你还必须为 isCurrentBaseSite
和 get currentUrl
添加自己的方法(只需复制并重命名),因为它们是私有的。