我正在按角度进行简单布线。它工作正常,但是当我要客户端路由意味着使用导航选项卡在同一页面中移动时,则会引发错误。这是我的代码:
service-detail.component.html
<ul class="asidemenu">
<li><a [routerLink]="['/service-details',serviceId]" fragment="overview" (click)="onAnchorClick()" class="
active"><span
class="asidemenu-icon"><img src="assets/images/binoculars.svg" alt=""></span><span class="asidemenu-title">Overview</span></a></li>
<li><a [routerLink]="['/service-details',serviceId]" fragment="review-analytics" (click)="onAnchorClick()"><span
class="asidemenu-icon"><img src="assets/images/graph-analysis.svg" alt=""></span><span class="asidemenu-title">Sentiment</span></a></li>
<li><a [routerLink]="['/service-details',serviceId]" fragment="expert-review" (click)="onAnchorClick()"><span
class="asidemenu-icon"><img src="assets/images/review.svg" alt=""></span><span class="asidemenu-title">Expert
Reviews</span></a></li>
<ul>
<div id='overview'> Overview (Removed Original content)</div>
<div id='review-analytics'> Reviews (Removed Original content)</div>
<div id='expert-review'> Expert Reviews (Removed Original content)</div>
根据上述代码,我可以自由地在同一页面中移动,但是每次都会Syntax error, unrecognized expression: /service-details/1139#overview
发生此错误。
可能是路由问题,然后如何解决?
谢谢。
答案 0 :(得分:2)
您需要在导入anchorScrolling
的地方启用RouterModule
@NgModule({
imports: [
RouterModule.forRoot(routes, {
anchorScrolling: 'enabled',
})
],
})
...
更多信息: https://medium.com/lacolaco-blog/introduce-router-scroller-in-angular-v6-1-ef34278461e9
答案 1 :(得分:1)
已在路线定义中设置了{useHash:true}