首页 > 解决方案 > 角度路由 - 触发活动路由但不改变其他任何内容

问题描述

在 Angular 8 中,我有一个当前运行良好的导航菜单,如果您单击导航中的链接,您将被带到该页面,一切都很好。在某些链接上有子链接,当您单击导航中的父链接时,子链接会出现在下方,并且路由器会打开第一个组件作为默认选择。

我现在必须更改它,以便当您单击父级时,它只会使子链接可见,但您不会在任何地方导航。我认为这只是在点击时显示/隐藏子项目的问题,但如果我这样做,URL 不会改变。如果我设置了一条空路线,它会显示一个空白页面,这也不好。

例如,想象一个导航项目“详细信息”,当单击它时会触发一个名为 /details 的路由 - url 已更新,子导航项目出现在导航下方,但没有其他任何事情发生。然后,如果用户单击子导航项(例如个人详细信息),他们将转到 /Details/personal 并且组件更改、url 更新等正常。

所以父链接触发 routerLinkActive 但不改变组件。这是否与路由的工作方式背道而驰?

标签: angularrouting

解决方案


推荐阅读