- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
问题:每当我单击第一个链接时,它总是选择这两个链接。
我想知道如何更新 Angular 路由组件?
路由器链接:
{ path: 'gantt/:id', component: GanttWorkItemsComponent, data: { permission: 'Pages.WorkItems' } },
{ path: 'gantt', component: GanttWorkItemsComponent, data: { permission: 'Pages.WorkItems' } },
组件代码:
constructor(
injector: Injector,
private _http: Http,
private _workItemsServiceProxy: WorkItemsServiceProxy,
private _notifyService: NotifyService,
private _tokenAuth: TokenAuthServiceProxy,
private _activatedRoute: ActivatedRoute,
private _fileDownloadService: FileDownloadService,
private params: ActivatedRoute ) {
super(injector);
this._activatedRoute.params.subscribe(val => {
var paramId = params.snapshot.params["id"];
if (paramId) {
this.initiativeFilter = paramId;
this.nameFilter = 'strategy.id=' + this.initiativeFilter;
}
});
}
HTML 模板:
<nav id="m_ver_menu"
class="{{ui.getSideBarMenuClass()}}"
data-menu-vertical="true"
[attr.data-menu-dropdown]="ui.getIsMenuDropdown()"
[attr.data-menu-scrollable]="ui.getIsMenuScrollable()"
data-menu-dropdown-timeout="500"
[attr.aria-label]="l('LeftMenu')">
<ul class="m-menu__nav {{ui.getMenuListClass()}}"
role="menubar"
[attr.aria-label]="l('LeftMenu')">
<ng-template ngFor let-menuItem [ngForOf]="menu.items" let-mainMenuItemIndex="index">
<li *ngIf="showMenuItem(menuItem)" routerLinkActive="m-menu__item--active" class="m-menu__item m-menu__item--submenu" [ngClass]="{'m-menu__item--expanded m-menu__item--open': menuItem.items.length > 0}" aria-haspopup="true" data-menu-submenu-toggle="hover">
<a [routerLink]="[menuItem.route]" *ngIf="!menuItem.items.length && !menuItem.external" class="m-menu__link m-menu__toggle"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
[attr.tabindex]="mainMenuItemIndex == 0 ? 0 : -1">
<i class="m-menu__link-icon {{menuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(menuItem.name)}}</span>
</span>
</a>
<a [attr.href]="[menuItem.route]" *ngIf="!menuItem.items.length && menuItem.external" class="m-menu__link m-menu__toggle" target="_blank"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
[attr.tabindex]="mainMenuItemIndex == 0 ? 0 : -1">
<i class="m-menu__link-icon {{menuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(menuItem.name)}}</span>
</span>
</a>
<a href="javascript:;" *ngIf="menuItem.items.length" class="m-menu__link m-menu__toggle"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
[attr.tabindex]="mainMenuItemIndex == 0 ? 0 : -1">
<i class="m-menu__link-icon {{menuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(menuItem.name)}}</span>
</span>
<i class="m-menu__ver-arrow la la-angle-right"></i>
</a>
<nav class="m-menu__submenu" *ngIf="menuItem.items.length" [attr.aria-label]="l(menuItem.name)">
<span class="m-menu__arrow"></span>
<ul class="m-menu__subnav"
[attr.aria-label]="l(menuItem.name)"
role="menu">
<ng-template ngFor let-childMenuItem [ngForOf]="menuItem.items" let-mainMenuItemIndex="index">
<li *ngIf="showMenuItem(childMenuItem)" routerLinkActive="m-menu__item--active" class="m-menu__item m-menu__item--submenu"
aria-haspopup="true"
data-menu-submenu-toggle="hover"
role="none">
<a [routerLink]="[childMenuItem.route]" *ngIf="!childMenuItem.items.length && !childMenuItem.external" class="m-menu__link m-menu__toggle"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
tabindex="-1">
<i class="m-menu__link-icon {{childMenuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(childMenuItem.name)}}</span>
</span>
</a>
<a [attr.href]="[childMenuItem.route]" *ngIf="!childMenuItem.items.length && childMenuItem.external" class="m-menu__link m-menu__toggle" target="_blank"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
tabindex="-1">
<i class="m-menu__link-icon {{childMenuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(childMenuItem.name)}}</span>
</span>
</a>
<a href="javascript:;" class="m-menu__link m-menu__toggle" *ngIf="childMenuItem.items.length"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
tabindex="-1">
<i class="m-menu__link-icon {{childMenuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(childMenuItem.name)}}</span>
</span>
<i class="m-menu__ver-arrow la la-angle-right"></i>
</a>
<nav class="m-menu__submenu" *ngIf="childMenuItem.items.length" [attr.aria-label]="l(menuItem.name)">
<span class="m-menu__arrow"></span>
<ul class="m-menu__subnav"
[attr.aria-label]="l(menuItem.name)"
role="menu">
<!-- Menu Level 3 -->
<ng-template ngFor let-childOfChildMenuItem [ngForOf]="childMenuItem.items" let-childOfChildMenuItemIndex="index">
<li *ngIf="showMenuItem(childOfChildMenuItem)" routerLinkActive="m-menu__item--active " class="m-menu__item m-menu__item--submenu"
aria-haspopup="true"
role="none"
data-menu-submenu-toggle="hover">
<a [routerLink]="[childOfChildMenuItem.route]" *ngIf="!childOfChildMenuItem.items.length && !childOfChildMenuItem.external" class="m-menu__link m-menu__toggle"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
tabindex="-1">
<i class="m-menu__link-icon {{childOfChildMenuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(childOfChildMenuItem.name)}}</span>
</span>
</a>
<a [attr.href]="[childOfChildMenuItem.route]" *ngIf="!childOfChildMenuItem.items.length && childOfChildMenuItem.external" class="m-menu__link m-menu__toggle" target="_blank"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
tabindex="-1">
<i class="m-menu__link-icon {{childOfChildMenuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(childOfChildMenuItem.name)}}</span>
</span>
</a>
<a href="javascript:;" class="m-menu__link m-menu__toggle" *ngIf="childOfChildMenuItem.items.length"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
tabindex="-1">
<i class="m-menu__link-icon {{childOfChildMenuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(childOfChildMenuItem.name)}}</span>
</span>
<i class="m-menu__ver-arrow la la-angle-right"></i>
</a>
<nav class="m-menu__submenu" *ngIf="childOfChildMenuItem.items.length" [attr.aria-label]="l(menuItem.name)">
<span class="m-menu__arrow"></span>
<ul class="m-menu__subnav"
[attr.aria-label]="l(menuItem.name)"
role="menu">
<!-- Menu Level 4 -->
<ng-template ngFor let-childOfChildOfChildMenuItem [ngForOf]="childOfChildMenuItem.items" let-childOfChildMenuItemIndex="index">
<li *ngIf="showMenuItem(childOfChildOfChildMenuItem)" routerLinkActive="m-menu__item--active " class="m-menu__item m-menu__item--submenu"
role="none">
<a [routerLink]="[childOfChildOfChildMenuItem.route]" *ngIf="!childOfChildOfChildMenuItem.external" class="m-menu__link"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
tabindex="-1">
<i class="m-menu__link-icon {{childOfChildOfChildMenuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(childOfChildOfChildMenuItem.name)}}</span>
</span>
</a>
<a [attr.href]="[childOfChildOfChildMenuItem.route]" *ngIf="childOfChildOfChildMenuItem.external" class="m-menu__link" target="_blank"
role="menuitem"
aria-haspopup="true"
aria-expanded="false"
tabindex="-1">
<i class="m-menu__link-icon {{childOfChildOfChildMenuItem.icon}}"></i>
<span class="m-menu__link-text">
<span class="title">{{l(childOfChildOfChildMenuItem.name)}}</span>
</span>
</a>
</li>
</ng-template>
</ul>
</nav>
</li>
</ng-template>
</ul>
</nav>
</li>
</ng-template>
</ul>
</nav>
</li>
</ng-template>
</ul>
我相信,每当第一个链接点击一个链接时,它总是点击父路由,即甘特图和参数。 tyff.. 和长列表都来自相同的组件和死记硬背,所以它从未更新参数一。每当我单击长列表时,它总是识别为长列表,但从不选择 tyffy 列表。
请帮我解决问题。
最佳答案
您需要在每个li(使用routerLinkActive
的地方)添加[routerLinkActiveOptions]="{exact:true}"
使用它,您可以通过传递exact: true来配置RouterLinkActive。仅当 url 与链接完全匹配时才会添加类。
所以你的代码应该是这样的
<li *ngIf="showMenuItem(childOfChildMenuItem)" routerLinkActive="m-
menu__item--active" [routerLinkActiveOptions]="{exact:true}" class="m-
menu__item m-menu__item--submenu">
<a .... </a>
</li>
关于javascript - Angular 6 : Child route as parameter not updated whenever it goes to parameter link,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52862464/
我通常从以下位置获取代码:https://www.w3schools.com .这个代码还有一个 Accordion ; 但是,当我使用链接 -> 到 Accordion 时, Accordion 不
我见过的所有 JNI 指南(例如 JNI runtime linking )都建议我将 JNI 库链接到 libjvm.so: $ gcc -I${JAVA_HOME}/include -c -o t
实现以下目标的正确 URL 格式是什么: 使用 Universal Link 在 iOS 上的另一个应用程序中打开 Google map 应用程序。 根据两个坐标设置目的地:纬度和经度,并让用户选择交
我已经查看了 Microsoft 的 MSDN 和整个网络,但我仍然无法很好地了解它是什么。 这是否意味着已完成的程序在执行期间的不同时间加载 DLL,而不是在启动时一次性加载所有 DLL? 我完全偏
我有一个看起来像这样的 css: .browse-link A:link { color: #F6CA4C; text-decoration: none; } .browse-link
当我点击“产品”链接时,它突然指向#link。我怎样才能使它的外观看起来像滚动然后转到产品?请帮帮我。 vStudy function big(x){
我想在保存之前更改从输入字段中获取的值。 params[:link]['url'] = "www.facebook.com/redbull" 现在我只想将“redbull”放入数据库。以下代码失败,因
我正在使用链表编写程序(真是一场噩梦)。 无论如何,该程序的目的是输入 8 个字符,然后让程序将字符打印回给您,并以相反的顺序打印回字符,当然是使用链表。 到目前为止我已经明白了。它有很多错误(我认为
基本上,我删除了 anchor 按钮,因此链接窗口中不应该有指向 anchor 选项的链接。 有什么方法可以删除该下拉选项 ? 最佳答案 想通了 if ( dialogName == 'link' )
我的本地(和远程)SQL SERVER 2005 管理员都声称“允许链接服务器是一个安全问题”并禁止在此处使用它们。 (哈?) 无论如何,有没有办法在没有链接服务器的情况下做类似的事情? SELE
如果我有: linkedlist1= 1,2,3,4; 和 linkedlist2= 5,6,7; 如果我调用: linkedlist2.set(0,9999) 它会更改为 linkedlist2 =
首先,如果这个问题看起来很愚蠢,我很抱歉,但我仍在学习 React 和 html。所以问题是我的 react 代码中有一个按钮标签,它为我提供了一些关于进入我提供的特定链接的逻辑。我的 Button.
我将制作一个文本 block ,这样如果您单击一个单词,它就会被词汇替代品所替换。 例如“fearful-of-cats”是“ailurophobic”的词汇替代品,因为如果您在任何文本中将后者替换为
我有以下代码 Can you click me? 目标是我可以点击“你能点击我吗”框并转到 google 并在包含 div 的任何其他地方
这是一个案例: 默认情况下,如果我点击#2、#3、#4、#5,我将被重定向到#1。 如果我想在没有 #1 激活的情况下点击输入,我该如何修复 CSS? 提前
有没有什么快速的方法可以使 :visited 链接的颜色与链接本身的颜色相同? 例如: * {color:black} a:link {color:blue} a:visited {color:inh
我读到从 iOS 9 开始,引入了通用链接。请解释深层链接和通用链接之间的区别。我的目标是,一个链接将通过邮件发送给客户。让邮件说有一个项目 A 的报价和一个链接。单击链接时 如果安装了该应用程序,则
因此我们需要对 CSS anchor 伪类使用以下顺序 a:link { color: red } a:visited { color: blue } a:hover { color
我组件的当前路径是http://localhost:3000/dashboard/questionnaire/5bf79ff4c45a150015cef7a9在这个组件里面有 Financials 如
我 rsync 目录“Promotion”包含两台具有不同目录结构的机器之间的绝对符号链接(symbolic link)。因此绝对符号链接(symbolic link)在两台机器上都不起作用。为了使它
我是一名优秀的程序员,十分优秀!