首页 web前端 js教程 Angular4中路由Router类的跳转navigate

Angular4中路由Router类的跳转navigate

May 05, 2018 pm 03:57 PM
router

这篇文章主要介绍了详解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([&#39;login&#39;]);
登录后复制

2.设置relativeTo相对当前路由跳转,route是ActivatedRoute的实例,使用需要导入ActivatedRoute

this.router.navigate([&#39;login&#39;, 1],{relativeTo: route});
登录后复制

3.路由中传参数 /login?name=1

this.router.navigate([&#39;login&#39;, 1],{ queryParams: { name: 1 } });
登录后复制

4.preserveQueryParams默认值为false,设为true,保留之前路由中的查询参数/login?name=1 to /home?name=1

this.router.navigate([&#39;home&#39;], { preserveQueryParams: true });
登录后复制

5.路由中锚点跳转 /home#top

 this.router.navigate([&#39;home&#39;],{ fragment: &#39;top&#39; });
登录后复制

6.preserveFragment默认为false,设为true,保留之前路由中的锚点/home#top to /role#top

this.router.navigate([&#39;/role&#39;], { preserveFragment: true });
登录后复制

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

this.router.navigate([&#39;/home&#39;], { skipLocationChange: true });
登录后复制

8.replaceUrl默认为true,设为false,路由不会进行跳转

this.router.navigate([&#39;/home&#39;], { replaceUrl: true });
登录后复制

以上是Angular4中路由Router类的跳转navigate的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

React Router使用指南:如何实现前端路由控制 React Router使用指南:如何实现前端路由控制 Sep 29, 2023 pm 05:45 PM

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

Vue Router Lazy-Loading路由的独特优势,如何优化页面性能? Vue Router Lazy-Loading路由的独特优势,如何优化页面性能? Sep 15, 2023 am 10:36 AM

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

react router 不显示怎么办 react router 不显示怎么办 Dec 30, 2022 am 09:30 AM

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

Vue Router Lazy-Loading路由:助力页面性能提升的趋势 Vue Router Lazy-Loading路由:助力页面性能提升的趋势 Sep 15, 2023 am 08:03 AM

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

vue3中如何使用router路由实现跳转传参 vue3中如何使用router路由实现跳转传参 May 16, 2023 am 10:49 AM

一、路由跳转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 项目中如何使用 Router 实现重定向功能 Sep 15, 2023 am 08:36 AM

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

Vue Router中的路由懒加载是如何实现的? Vue Router中的路由懒加载是如何实现的? Jul 21, 2023 am 10:40 AM

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

举例说明Vue Router路由重定向与别名设置 举例说明Vue Router路由重定向与别名设置 Aug 10, 2022 pm 02:16 PM

本篇文章给大家通过举例来介绍Vue Router路由重定向与别名设置,希望对需要的朋友有所帮助!

See all articles