如何使用核心angular2路由器停止angular2应用程序中的url追加

如何使用核心angular2路由器停止angular2应用程序中的url追加,angular,angular2-routing,Angular,Angular2 Routing,我的应用程序在另一个应用程序中出现,我无法在url中追加任何内容,因为父应用程序受到限制 是否有一种方法可以停止在url中追加内容。我能够通过this.router.navigate(value,true)在angular2 alpha 34构建中实现同样的功能 我想在@angular:2.0.1和html中做同样的事情,而不是在我的typescript类中定义一个方法并调用它(单击)。听起来像是在寻找skipLocationChange: router.navigate(['team', 33

我的应用程序在另一个应用程序中出现,我无法在url中追加任何内容,因为父应用程序受到限制

是否有一种方法可以停止在url中追加内容。我能够通过
this.router.navigate(value,true)在angular2 alpha 34构建中实现同样的功能


我想在@angular:2.0.1和html中做同样的事情,而不是在我的typescript类中定义一个方法并调用它(单击)。

听起来像是在寻找
skipLocationChange

router.navigate(['team', 33, 'user', 11], {relativeTo: route, skipLocationChange: true });

另请参见skipLocationChange:true阻止angular2在URL中追加任何内容。正如@Günter Zöchbauer所建议的,您需要通过skipLocationChange:true,因为默认值为false

完整代码为:

import { Router }   from '@angular/router';

export class MovingInPages {

    constructor(private router: Router) {
    }

    moveToAnotherPage(value: string) {
        this.router.navigate([value], { skipLocationChange: true });
    }
}
html如下所示:

<button type="button"  (click)="moveToAnotherPage('another-page-route')" class="btn btn-primary">Another page</button>
另一页

这是什么意思
我的应用程序在另一个应用程序中出现了
?有什么方法可以从我的html中做到这一点吗?我不这么认为
routerLink
似乎没有提供选项。什么是relativeTo:route?如果没有这个选择,现在对我来说是可行的。还清理了一点对不起,我只是从链接文档页面复制了代码。如果使用子路由的相对路径,则只需通过路由。@GünterZöchbauer是否可以申请整个应用程序而不是添加到每个导航?