为什么角度路由将井号标签#添加到网址

时间:2019-02-06 11:14:49

标签: angular angular-routing

使用的版本

角版本:7.10 @ angular / router“:”〜7.2.0“,

问题是

为什么angular会在网址中添加一个hashTag。

示例案例:

const routes: Routes = [
  {
    path: 'aktion',
    component: AktionComponent
  }

与网址

匹配
http://localhost:4200/aktion

但与网址不匹配

http://localhost:4200/#/aktion

3 个答案:

答案 0 :(得分:1)

如果您将此行添加到App Module中,则会添加#

   RouterModule.forRoot(AppRoutes, { useHash: true }),

答案 1 :(得分:1)

在应用程序模块中,这样做

err1_convert = @(param_1) transf_funct(  -7 inputs-  )
err2_convert = @(param_1) transf_funct(  -7 inputs-  )

答案 2 :(得分:1)

如果您使用的是I cant do the following below: <FAQ qa={translate(faq.qa)}/> <FAQ qa={translate(faq.qa.question)}/> ,则应将服务器配置为也以PathLocationStrategy的形式发送error page,因为通常这会导致index.html,并且Angular应该解析路线。

为避免麻烦,可以使用404,因为#后面的任何部分都会被服务器忽略,并且只能从浏览器中进行解析。因此,您拥有#号。 要删除它,您可以更新HashLocationStrategy,如其他答案所示。

RouterModule configuration