Angular2 rc3中的HashLocation策略
我知道这可能是一个老问题,但因为我找不到任何答案,我的问题。我得再发一次。 我使用的是Angular2 rc3,据我所知,我使用的是HashLocationStrategyAngular2 rc3中的HashLocation策略,angular,Angular,我知道这可能是一个老问题,但因为我找不到任何答案,我的问题。我得再发一次。 我使用的是Angular2 rc3,据我所知,我使用的是HashLocationStrategy export const APPLICATION_PROVIDERS = [ ...FORM_PROVIDERS, ...HTTP_PROVIDERS, ...ROUTER_PROVIDERS, { provide: LocationStrategy, useClass: HashLocationStrategy }
export const APPLICATION_PROVIDERS = [
...FORM_PROVIDERS,
...HTTP_PROVIDERS,
...ROUTER_PROVIDERS,
{ provide: LocationStrategy, useClass: HashLocationStrategy }
];
但我运气不好,应用程序仍然提供类似“/app”、“/home”、no“/#/app”或“/#/home”的路由。
有人请告诉我为什么,我可以提供更多的代码,如果必要的。谢谢。您还必须向
bootstrap(AppComponent, [APPLICATION_PROVIDERS]);
AFAIR当时的provide
语法如下:
export const APPLICATION_PROVIDERS = [
...FORM_PROVIDERS,
...HTTP_PROVIDERS,
...ROUTER_PROVIDERS,
provide(LocationStrategy, {useClass: HashLocationStrategy})
];
看起来您没有将
APPLICATION\u PROVIDERS
const添加到NgModule
首先,您需要将APPLICATION\u PROVIDERS
导入应用程序的主条目,然后将其添加到NgModule
例如:
import {APPLICATION_PROVIDERS} from '.......';
@NgModule({
.....,
providers: [
APPLICATION_PROVIDERS
]
})
class RootAppModule {}
我使用的是beta rc3版本,所以还没有@NgModule。起初我认为这与我的问题无关,但根据你的答案进行了一些调整后,我终于找到了答案。非常感谢。