这篇文章主要介绍了详解Angular4中路由Router类的跳转navigate,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
最近一直在学习angular4,它确实比以前有了很大的变化和改进,好多地方也不是那么容易就能理解,好在官方的文档和例子是中文,对英文不太好的还是有很大帮助去学习。
在学习的过程中路由(router)机制是离不开的,并且好多地方都要用到。
首先路由配置Route:
import { NgModule } from '@angular/core'; import { RouterModule, Routes } from '@angular/router'; import { HomeComponent } from './home.component'; import { LoginComponent } from './login.component'; import { RegisterComponent } from './register.component'; const routes: Routes = [ { path: '', redirectTo: '/home', pathMatch: 'full' }, { path: 'home', component: HomeComponent }, { path: 'login', component: LoginComponent }, { path: 'heroes', component: RegisterComponent } ]; @NgModule({ imports: [ RouterModule.forRoot(routes) ], exports: [ RouterModule ] }) export class AppRoutingModule {}
其次路由跳转Router.navigate
navigate(commands: any[], extras?: NavigationExtras) : Promise<boolean>
interface NavigationExtras { relativeTo : ActivatedRoute queryParams : Params fragment : string preserveQueryParams : boolean queryParamsHandling : QueryParamsHandling preserveFragment : boolean skipLocationChange : boolean replaceUrl : boolean }
1.以根路由跳转/login
this.router.navigate(['login']);
2.设置relativeTo相对当前路由跳转,route是ActivatedRoute的实例,使用需要导入ActivatedRoute
this.router.navigate(['login', 1],{relativeTo: route});
3.路由中传参数 /login?name=1
this.router.navigate(['login', 1],{ queryParams: { name: 1 } });
4.preserveQueryParams默认值为false,设为true,保留之前路由中的查询参数/login?name=1 to /home?name=1
this.router.navigate(['home'], { preserveQueryParams: true });
5.路由中锚点跳转 /home#top
this.router.navigate(['home'],{ fragment: 'top' });
6.preserveFragment默认为false,设为true,保留之前路由中的锚点/home#top to /role#top
this.router.navigate(['/role'], { preserveFragment: true });
7.skipLocationChange默认为false,设为true,路由跳转时浏览器中的url会保持不变,但是传入的参数依然有效
this.router.navigate(['/home'], { skipLocationChange: true });
8.replaceUrl默认为true,设为false,路由不会进行跳转
this.router.navigate(['/home'], { replaceUrl: true });
Atas ialah kandungan terperinci Angular4中路由Router类的跳转navigate. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

ReactRouter使用指南:如何实现前端路由控制随着单页应用的流行,前端路由成为了一个不可忽视的重要部分。ReactRouter作为React生态系统中最受欢迎的路由库,提供了丰富的功能和易用的API,使得前端路由的实现变得非常简单和灵活。本文将介绍ReactRouter的使用方法,并提供一些具体的代码示例。安装ReactRouter首先,我们需

VueRouter是Vue.js官方提供的路由管理插件,它可以帮助我们在Vue应用程序中实现页面导航和路由切换。其中的Lazy-Loading特性是VueRouter的一个独特优势,它可以极大地优化页面性能。在本文中,我们将介绍VueRouter的Lazy-Loading路由特性,并提供一些优化页面性能的实际代码示例。Lazy-Loading是指在需要

react router不显示的解决办法:1、在父路由组件中加入browserRouter把router都包起来;2、使用“this.props.history.go()”进行组件刷新;3、在browserrouter参数里加上“forcerefresh={true}”;4、在“<Route>”里面写钩子函数,并在离开或进入此路由时调用即可。

一、路由跳转1.首先在需要跳转的页面引入API—useRouterimport{useRouter}from'vue-router'2.在跳转页面定义router变量//先在setup中定义constrouter=useRouter()3.用router.push跳转页面//字符串router.push('home')//对象router.push({path:'home'})//

VueRouter中的路由懒加载是如何实现的?在Vue开发中,我们通常使用VueRouter来实现页面之间的跳转和路由控制。当项目变得庞大时,我们可能会有很多路由页面需要加载,这样会导致整个项目的加载速度变慢。为了提高项目的性能,VueRouter提供了一种路由懒加载的机制。路由懒加载是指在路由页面被访问时才会进行加载,而不是在应用初始化时就加载所有路

VueRouter是Vue.js框架中的官方路由管理器。它允许开发者通过路由映射来切换页面内容,使得单页应用程序更加可控和易于维护。但是,在应用程序变得越来越复杂的情况下,路由的加载和解析可能会成为性能瓶颈。为了解决这个问题,VueRouter提供了一种懒加载路由的功能,即将路由的加载推迟到实际需要时。Lazy-loading(懒加载)是一种加载技术,它

在Vue项目中如何使用Router实现重定向功能在一个Vue项目中,我们常常需要实现页面之间的跳转和重定向功能。而VueRouter提供了一个简单而强大的解决方案。本文将介绍如何在Vue项目中使用Router实现重定向功能,并给出具体的代码示例。安装VueRouter首先,我们需要在Vue项目中安装VueRouter。可


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini

mPDF
mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),