很多客户从Accelerator迁移到spartacus会采用路由方式,也就是说客户会在同一个域使用不同的系统同时Drive部分店面。我们希望支持具有退出SPA和重新加载页面的选项的可配置路由,以允许后端驱动的响应(基于URL模式)。只要我们在SPA的范围内,我们就只执行交互导航,因为使用Angular的routerLink,它不会按设计进行完全重新加载。但是,我们可以使用Guard来定义强制完全重新加载指定配置路径的虚拟路由。为了更容易测试(不要进入闪烁的页面重新加载的无限循环),通过扩展外部路由保护来延迟页面重新加载:@Injectable()exportclassCustomRoutingMigrationGuardextendsExternalRoutesGuard{redirect(route,state){守卫激活,在5秒内重定向');setTimeout(()=>{super.redirect(route,state);},5000);}}在appModule中定义这个Guard:providers:[{provide:ExternalRoutesGuard,useClass:CustomRoutingMigrationGuard},]Test:routing:{internal:['/**','!/cart','!/?','!/???','!/login','!/login/register','!/product/*/*','!/Open-Catalogue/**/p/**',]}验证下面列出的页面执行重新加载(由于缺少后端规则而无限发生循环重新加载,这些规则通常根据URL的模式呈现不同的店面):/cart/x/faq/abc/login/login/register/product/358639/DSC-N1/Open-Catalogue/Cameras/DigitalCameras/Digital-Compacts/NV10/p/553637https://github.com/SAP/sparta...Angular预配置了使用代理服务器的webpack开发服务开发人员可以配置。如果您有一个本地运行的加速器,您可以为那些应该链接到本地??加速器的路由使用代理配置。我们需要记录以下内容:使用代理配置文件配置angular.json文件记录示例代理配置记录package.json脚本以便于启动我们还可以使用本地nginx记录替代设置。生成/更新项目时不会添加外部路由模块使用加速器支持混合店面如何并排配置基于Spartacus和加速器的店面?(外部路由)为了实现两个店面在同一个域下,你需要设置一个apache虚拟主机什么的(假设electronics.local指向9002和4200)。
