Angular4中路由Router类的跳转navigate
这篇文章主要介绍了详解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 });
以上是Angular4中路由Router类的跳转navigate的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

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、在“”里面写钩子函数,并在离开或进入此路由时调用即可。

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

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

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

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