当前位置:首页 > 日记 > 正文

angular2中router路由跳转navigate的使用与刷新页面问题详解

angular2中router路由跳转navigate的使用与刷新页面问题详解

本文主要介绍的是angular2中router路由跳转navigate的使用与刷新页面问题的相关内容,分享出供大家参考学习,下面来看看详细的介绍:

一、router.navigate的使用

navigate是Router类的一个方法,主要用来跳转路由。

函数定义:

navigate(commands: any[], extras?: NavigationExtras) : Promise`<boolean>`
interface NavigationExtras { relativeTo : ActivatedRoute queryParams : Params fragment : string preserveQueryParams : boolean preserveFragment : boolean skipLocationChange : boolean replaceUrl : boolean}

1.this.router.navigate(['user', 1]);

以根路由为起点跳转

2.this.router.navigate(['user', 1],{relativeTo: route});

默认值为根路由,设置后相对当前路由跳转,route是ActivatedRoute的实例,使用需要导入ActivatedRoute

3.this.router.navigate(['user', 1],{ queryParams: { id: 1 } });
路由中传参数 /user/1?id=1

4.this.router.navigate(['view', 1], { preserveQueryParams: true });

默认值为false,设为true,保留之前路由中的查询参数/user?id=1 to /view?id=1

5.this.router.navigate(['user', 1],{ fragment: 'top' });

路由中锚点跳转 /user/1#top

6.this.router.navigate(['/view'], { preserveFragment: true });

默认值为false,设为true,保留之前路由中的锚点/user/1#top to /view#top

7.this.router.navigate(['/user',1], { skipLocationChange: true });

默认值为false,设为true路由跳转时浏览器中的url会保持不变,但是传入的参数依然有效

8.this.router.navigate(['/user',1], { replaceUrl: true });

未设置时默认为true,设置为false路由不会进行跳转

二、router.navigate刷新页面问题

造成这个问题一般是因为我们在<form>表单中使用<button>时忘记添加type属性,在表单中,如果忘记给按钮添加属性,会默认为submit

<button (click)="toDetail()">detail</button>
toDetail() { this._router.navigate(['/detail']);}

解决方法:

1.添加type

<button type="button" (click)="toDetail()">detail</button>

2.click添加false

<button (click)="toDetail();false">detail</button>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用Angular.js能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。

更多关于AngularJS相关内容感兴趣的读者可查看本站专题:《AngularJS指令操作技巧总结》、《AngularJS入门与进阶教程》及《AngularJS MVC架构总结》

相关文章

2017微信怎么加qq好友微信加好友的

2017微信怎么加qq好友微信加好友的

步骤,方法,好友,电脑软件,qq,  相对于QQ而言,使用微信的人越来越多,这就会遇到这么一个问题。如何把QQ好友转移到微信上呢,也就是说如何把QQ好友添加为微信好友,下面小编就为大家演示下微信加qq好友的方法,希望能帮到你。2017微信加qq好友的步…

ppt2007恢复文件的方法步骤有哪些

ppt2007恢复文件的方法步骤有哪些

文件,恢复,方法,步骤,有哪些,  在PPT的使用中,我们也难免会因为一时疏忽造成一些意外,比如误删了PPT的内容或者文件,那么如何才能恢复误删的PPT文件呢?以下是小编为您带来的关于ppt2007恢复文件的方法,希望对您有所帮助。ppt2007恢复文件的方…

JavaScript实现的浏览器下载文件的

JavaScript实现的浏览器下载文件的

浏览器,方法,下载文件,电脑软件,JavaScript,废话不多说了,直接给大家贴代码了,具体代码如下所示:function download(src) { var $a = document.createElement('a'); $a.setAttribute("href", src); $a.setAttribute("download"…

ps怎样处理太黑的照片

ps怎样处理太黑的照片

照片,方法,太黑,电脑软件,ps,  当大家拍了一张非常黑的照片时没事,ps可以处理好的。很多刚学习的新手小伙伴可能还不知道,下面是小编带来关于ps怎样处理太黑的照片的内容,希望可以让大家有所收获!ps处理太黑的照片的方法打开一张背景比较暗…

ps怎么设计苏宁的狮子图标?

ps怎么设计苏宁的狮子图标?

图标,狮子,电脑软件,ps,苏宁,ps设计苏宁狮子图标的时候,想要让狮子看上去可爱一点,可以在狮子头部下点功夫,下面我们就来看看ps设计狮子图标的教程,请看下文详细介绍。软件名称:Adobe photoshop 7.01 官方正式简体中文版软件大小:154MB更新时间:20…

在实战中可能碰到的几种ajax请求方

在实战中可能碰到的几种ajax请求方

方法,请求,实战,几种,详解,前言最近在做一个针对单个节点测速的功能页面,测速的逻辑是,测上传速度时,前端传5m数据给server,记录上传和返回数据的时间,测下载速度时,从server下载1m的数据,记录下载和下载成功的时间,上传和下载用的是ajax同步以避免…

AI暂存盘怎么设置? ai主次暂存盘的

AI暂存盘怎么设置? ai主次暂存盘的

设置,方法,主次,电脑软件,AI,AI使用的时候很卡,想要设置一下暂存盘,该怎么设置呢?下面我们就来看看详细的教程。软件名称:Adobe Illustrator CS6 (AI cs6) 精简绿色中文版(32位+64位)软件大小:205MB更新时间:2014-05-111、在桌面上双击AI的快捷图…

PS怎么利用旋转绘制规则花纹图形?

PS怎么利用旋转绘制规则花纹图形?

图形,绘制,花纹,规则,电脑软件,PS,利用CTRL、ALT、SHIFT和 T 这四个键可以绘制出如图中所示的图。软件名称:Adobe Photoshop 8.0 中文完整绿色破解版软件大小:150.1MB更新时间:2015-11-041、打开PS操作界面,新建一个文件。在文件里,有一个背景图…

vue 中自定义指令改变data中的值

vue 中自定义指令改变data中的值

自定义指令,电脑软件,vue,data,通过局部自定义指令实现了一个拖动的指令html:<div style="position:absolute;width:100px;height:100px;border:1px solid red" v-drag="{set:set}"></div>script:methods:{set(x,y){this.data.x=x;this…

JavaScript 中Date对象的格式化代

JavaScript 中Date对象的格式化代

对象,方法,格式化,代码,电脑软件, JavaScript默认的时间格式我们一般情况下不会用,所以需要进行格式化,下面说说我总结的JavaScript时间格式化方法。很多时候,我们可以利用JavaScript中Date对象的内置方法来格式化,如:var d = new Date();consol…

nodejs开发微信小程序实现密码加密

nodejs开发微信小程序实现密码加密

加密,密码,程序,电脑软件,nodejs,微信小程序开发--实现密码加密具体步骤:在utils中的util.js 文件中增加 函数 实现 字符串转换为16进制加密后的字符串:function encodeUTF8(s) {var i, r = [], c, x;for (i = 0; i < s.length; i++)if ((c =…

微信小程序--组件(swiper)详细介绍

微信小程序--组件(swiper)详细介绍

组件,详细介绍,程序,电脑软件,微信小,根据微信小程序官网提供的示例进行操作并进行总结:swiper 主要设置的属性index.WXML 的设置:index.js设置:感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!…