全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解Angular4中路由Router类的跳转navigate

最近一直在学习angular4,它确实比以前有了很大的变化和改进,好多地方也不是那么容易就能理解,好在官方的文档和例子是中文,对英文不太好的还是有很大帮助去学习。

官方地址:https://angular.cn/docs/ts/latest/api/router/index/Router-class.html

在学习的过程中路由(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 }); 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Angular  # 跳转navigate  # vue  # 路由跳转  # angular4  # Angular学习教程之RouterLink花式跳转  # 详解angular路由高亮之RouterLinkActive  # angularjs路由传值$routeParams详解  # 详解Angular4 路由设置相关  # 浅谈Angular路由守卫  # angular2中router路由跳转navigate的使用与刷新页面问题详解  # angular2路由之routerLinkActive指令【推荐】  # 跳转  # 设为  # 默认为  # 是有  # 都要  # 就能  # 英文  # 比以前  # 值为  # 大家多多  # 过程中  # 中传  # 器中  # 文档  # 不太好  # component  # LoginComponent  # login  # RouterModule  # core 


相关文章: ,怎么在广州志愿者网站注册?  上海网站制作网站建设公司,建筑电工证网上查询系统入口?  网站插件制作软件免费下载,网页视频怎么下到本地插件?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  如何快速搭建高效可靠的建站解决方案?  宿州网站制作公司兴策,安徽省低保查询网站?  php json中文编码为null的解决办法  个人网站制作流程图片大全,个人网站如何注销?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  高端建站三要素:定制模板、企业官网与响应式设计优化  北京网页设计制作网站有哪些,继续教育自动播放怎么设置?  上海网站制作开发公司,上海买房比较好的网站有哪些?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  已有域名能否直接搭建网站?  平台云上自主建站:模板化设计与智能工具打造高效网站  建站中国官网:模板定制+SEO优化+建站流程一站式指南  重庆市网站制作公司,重庆招聘网站哪个好?  建站主机服务器选购指南:轻量应用与VPS配置解析  建站之星如何助力企业快速打造五合一网站?  昆明网站制作哪家好,昆明公租房申请网上登录入口?  javascript中对象的定义、使用以及对象和原型链操作小结  用v-html解决Vue.js渲染中html标签不被解析的问题  Thinkphp 中 distinct 的用法解析  如何在万网主机上快速搭建网站?  如何在云主机快速搭建网站站点?  如何在云主机上快速搭建网站?  焦点电影公司作品,电影焦点结局是什么?  制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?  移民网站制作流程,怎么看加拿大移民官网?  如何在服务器上三步完成建站并提升流量?  家具网站制作软件,家具厂怎么跑业务?  建站主机与服务器功能差异如何区分?  子杰智能建站系统|零代码开发与AI生成SEO优化指南  盐城做公司网站,江苏电子版退休证办理流程?  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  建站之星后台密码遗忘如何找回?  如何在Tomcat中配置并部署网站项目?  Python多线程使用规范_线程安全解析【教程】  建站之星伪静态规则如何正确配置?  如何用低价快速搭建高质量网站?  外贸公司网站制作,外贸网站建设一般有哪些步骤?  c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】  如何在景安云服务器上绑定域名并配置虚拟主机?  潍坊网站制作公司有哪些,潍坊哪家招聘网站好?  学校为何禁止电信移动建设网站?  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  如何通过商城自助建站源码实现零基础高效建站?  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  建站之星安装模板失败:服务器环境不兼容?  如何快速启动建站代理加盟业务? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。