重新加载页面时,在 Angular 中的 url 中删除 # 后页面不会加载 6.
When reload page , page not load after remove # from url in Angular 6.
在我的 angular 6 应用程序中,我在 url 中获得了 #
。
之前
RouterModule.forRoot(Approutes, { useHash: true }),
我有这样的更新。(删除第二个参数)
RouterModule.forRoot(Approutes),
然后我也有更新 provider
。
{
provide: LocationStrategy,
useClass: PathLocationStrategy
},
第一次使用还好,但是当我重新加载页面时,就不行了。
当您使用 PathLocationStrategy 而不是 HashLocationStrategy 时,您必须配置 Web 服务器,使其将请求路由到 Angular-Application 的索引页。否则浏览器找不到路径(因为路径不存在于网络服务器的文件系统中...)
PathLocationStrategy 需要在服务器端进行配置,以便将@RouteConfig 中配置的所有路径重定向到Angular 应用程序的主HTML 页面。
如果你想实现 PathLocationStrategy 方法,你可以通过
现在我也在用同样的东西
RouterModule.forRoot(Approutes, { useHash: true }),
也和任何问题一样。它解决了我的问题。我不知道如何解决,但它解决了。当我找到解决问题的正确理由时,我将编辑我的答案。
在我的 angular 6 应用程序中,我在 url 中获得了 #
。
之前
RouterModule.forRoot(Approutes, { useHash: true }),
我有这样的更新。(删除第二个参数)
RouterModule.forRoot(Approutes),
然后我也有更新 provider
。
{
provide: LocationStrategy,
useClass: PathLocationStrategy
},
第一次使用还好,但是当我重新加载页面时,就不行了。
当您使用 PathLocationStrategy 而不是 HashLocationStrategy 时,您必须配置 Web 服务器,使其将请求路由到 Angular-Application 的索引页。否则浏览器找不到路径(因为路径不存在于网络服务器的文件系统中...)
PathLocationStrategy 需要在服务器端进行配置,以便将@RouteConfig 中配置的所有路径重定向到Angular 应用程序的主HTML 页面。
如果你想实现 PathLocationStrategy 方法,你可以通过
现在我也在用同样的东西
RouterModule.forRoot(Approutes, { useHash: true }),
也和任何问题一样。它解决了我的问题。我不知道如何解决,但它解决了。当我找到解决问题的正确理由时,我将编辑我的答案。