首页 > 解决方案 > Angular 5避免针对特定路线的HashLocationStrategy

问题描述

在我的 Angular 5 应用程序中,我有多个路线。我已经添加{ provide: LocationStrategy, useClass: HashLocationStrategy }了 app.module.ts 文件的提供者。但我想HashLocationStrategy从特定路线中删除它。

谢谢你。

标签: angularhash-location-strategy

解决方案


长话短说,你不能。文档和您声明路由策略的方式推断出原因:

用于配置定位服务以在浏览器 URL 的哈希片段中表示其状态的 LocationStrategy。

它是提供的(像服务一样),没有办法挂钩注入并在运行时提供多个注入选项(如果路径像......然后注入这个或另一个)。依赖注入是在模块初始化期间设置的,我知道没有办法解决这个问题。

然后我们可以从Location服务的目的来推断,这只是一个目的,是根据策略创建相对 url,它采用提供的策略并在应用程序范围内使用它。


推荐阅读