【发布时间】:2018-07-18 13:40:18
【问题描述】:
我正在使用 jhipster 4.13.3 和 angular 5
使用在线页面生成的jhipster项目,做了一个“jhipster import-jdl”命令来生成实体。到目前为止,该应用程序运行良好。
然后我开始添加我的业务逻辑。我更新了生成的实体 component.ts 和 html 文件。此外,将以下代码添加到 navbar.component.html
<li *jhiHasAnyAuthority="'ROLE_MANAGER'" ngbDropdown class="nav-item dropdown pointer" routerLinkActive="active" [routerLinkActiveOptions]="{exact: true}">
<a class="nav-link dropdown-toggle" ngbDropdownToggle href="javascript:void(0);" id="manager-menu">
<span>
<i class="fa fa-user-plus" aria-hidden="true"></i>
<span>Manager</span>
</span>
</a>
<ul class="dropdown-menu" ngbDropdownMenu>
<li>
<a class="dropdown-item" routerLink="task-group" routerLinkActive="active" [routerLinkActiveOptions]="{ exact: true }" (click)="collapseNavbar()">
<i class="fa fa-fw fa-user" aria-hidden="true"></i>
<span>List of task groups</span>
</a>
</li>
</ul>
</li>
<li *jhiHasAnyAuthority="['ROLE_MANAGER','ROLE_EDITOR','ROLE_TRANSCRIPT']" ngbDropdown class="nav-item dropdown pointer" routerLinkActive="active" [routerLinkActiveOptions]="{exact: true}">
<a class="nav-link dropdown-toggle" ngbDropdownToggle href="javascript:void(0);" id="my-task-menu">
<span>
<i class="fa fa-user-plus" aria-hidden="true"></i>
<span>My tasks</span>
</span>
</a>
<ul class="dropdown-menu" ngbDropdownMenu>
<li>
<a class="dropdown-item" routerLink="task" routerLinkActive="active" [routerLinkActiveOptions]="{ exact: true }" (click)="collapseNavbar()">
<i class="fa fa-fw fa-user" aria-hidden="true"></i>
<span>List of tasks</span>
</a>
</li>
</ul>
</li>
请注意,我没有创建任何新路线。我指的是创建 routerLink 的实体。
在运行应用程序后,点击几下后,我收到以下错误。单击我创建的菜单项后发生错误。我在屏幕上只看到页眉和页脚。
路由器事件:NavigationError platform-browser.js:380 NavigationError(id:2,url:'/user-info',错误:TypeError:订阅者 未定义)platform-browser.js:367 {…} 错误:TypeError:订阅者 未定义堆栈跟踪:[object Object] id:2 url:“/user-info” proto: Object { 构造函数: NavigationError(), toString: NavigationError.prototype.toString() }
我应该将路由定义设为“全局”吗?如果有,怎么做?
非常感谢您在解决路由器问题方面的任何帮助。
【问题讨论】:
标签: angular angular2-routing jhipster