angular2中router路由跳轉(zhuǎn)navigate的使用與刷新頁面問題詳解
本文主要介紹的是angular2中router路由跳轉(zhuǎn)navigate的使用與刷新頁面問題的相關(guān)內(nèi)容,分享出供大家參考學(xué)習(xí),下面來看看詳細(xì)的介紹:
一、router.navigate的使用
navigate是Router類的一個(gè)方法,主要用來跳轉(zhuǎn)路由。
函數(shù)定義:
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]);
以根路由為起點(diǎn)跳轉(zhuǎn)
2.this.router.navigate(['user', 1],{relativeTo: route});
默認(rèn)值為根路由,設(shè)置后相對(duì)當(dāng)前路由跳轉(zhuǎn),route是ActivatedRoute的實(shí)例,使用需要導(dǎo)入ActivatedRoute
3.this.router.navigate(['user', 1],{ queryParams: { id: 1 } });
路由中傳參數(shù) /user/1?id=1
4.this.router.navigate(['view', 1], { preserveQueryParams: true });
默認(rèn)值為false,設(shè)為true,保留之前路由中的查詢參數(shù)/user?id=1 to /view?id=1
5.this.router.navigate(['user', 1],{ fragment: 'top' });
路由中錨點(diǎn)跳轉(zhuǎn) /user/1#top
6.this.router.navigate(['/view'], { preserveFragment: true });
默認(rèn)值為false,設(shè)為true,保留之前路由中的錨點(diǎn)/user/1#top to /view#top
7.this.router.navigate(['/user',1], { skipLocationChange: true });
默認(rèn)值為false,設(shè)為true路由跳轉(zhuǎn)時(shí)瀏覽器中的url會(huì)保持不變,但是傳入的參數(shù)依然有效
8.this.router.navigate(['/user',1], { replaceUrl: true });
未設(shè)置時(shí)默認(rèn)為true,設(shè)置為false路由不會(huì)進(jìn)行跳轉(zhuǎn)
二、router.navigate刷新頁面問題
造成這個(gè)問題一般是因?yàn)槲覀冊(cè)?lt;form>表單中使用<button>時(shí)忘記添加type屬性,在表單中,如果忘記給按鈕添加屬性,會(huì)默認(rèn)為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>
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家學(xué)習(xí)或者使用Angular.js能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
更多關(guān)于AngularJS相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《AngularJS指令操作技巧總結(jié)》、《AngularJS入門與進(jìn)階教程》及《AngularJS MVC架構(gòu)總結(jié)》
相關(guān)文章
Angular2利用組件與指令實(shí)現(xiàn)圖片輪播組件
這篇文章主要給大家介紹了Angular2中組件與指令的一個(gè)小實(shí)踐,利用組件和指令實(shí)現(xiàn)一個(gè)圖片輪播組件的相關(guān)資料,文中給出了詳細(xì)的介紹和示例代碼,需要的朋友可以參考學(xué)習(xí),下面來一起看看吧。2017-03-03Angular 輸入框?qū)崿F(xiàn)自定義驗(yàn)證功能
AngularJS 表單和控件可以驗(yàn)證輸入的數(shù)據(jù)。本文給大家介紹Angular 輸入框?qū)崿F(xiàn)自定義驗(yàn)證功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下2017-02-02AngularJs html compiler詳解及示例代碼
本文主要介紹AngularJs html compiler的知識(shí)講解,這里整理了相關(guān)資料及相關(guān)示例代碼,有興趣的小伙伴可以參考下2016-09-09angularjs 的數(shù)據(jù)綁定實(shí)現(xiàn)原理
本篇文章主要介紹了angularjs 的數(shù)據(jù)綁定實(shí)現(xiàn)原理,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-07-07AngularJS ui-router (嵌套路由)實(shí)例
本篇文章主要介紹了AngularJS ui-router (嵌套路由)實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-03-03AngularJS路由切換實(shí)現(xiàn)方法分析
這篇文章主要介紹了AngularJS路由切換實(shí)現(xiàn)方法,結(jié)合具體實(shí)例形式分析了AngularJS路由切換的實(shí)現(xiàn)步驟與相關(guān)操作技巧,需要的朋友可以參考下2017-03-03angularJs中orderBy篩選以及filter過濾數(shù)據(jù)的方法
今天小編就為大家分享一篇angularJs中orderBy篩選以及filter過濾數(shù)據(jù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-09-09