Angular的学习使用过程中,路由跳转支撑了项目的全过程,所以路由跳转是一个很常见也是一个很容易忽略的点,,对于页面之间的跳转有着很多的问题,跳转的方式/如何携带参数跳转,下面是自己在学习过程中对angular路由跳转的总结(angular7)

路由跳转的第一种方式-导航式跳转

第一种:该指令接收一个链接参数数组,Angular将根据该数组来生成UrlTree实例进行跳转。使用routerLink跳转,在标签的写入将将要跳转的页面路径写在【】中,

<div routerLink="['/path']"></div>

如果有需要再路由跳转的时候携带某些指定的参数,例如:id/ 在对应的ts文件中声明一个id,将申明的id写在传递参数queryParams对象中

<div routerLink="['/path']" [queryParams]="{id:key}" >跳转</div>

  点击标签跳转以后获取传过来的参数 注意:接收时通过 queryParams 进行接收
首先引入

import {ActivatedRoute} from '@angular/router'
再声明:
constructor(public route:ActivatedRoute) { }
接收: // 接收传过来的值

ngOnInit() {
this.route.queryParams.subscribe((res)=>{
console.log(res)
})
}

第二种:动态路由传值这种情况是在浏览器中可以显示对应的参数 这种的是斜杆
在路由文件中进行配置path: 'devicepay/:id' */:id必传

{ path: 'devicepay/:id',component:DevicepayComponent},

  在html界面中进行跳转

<a [routerLink]="['/devicepay/',key]">

  在另一界面中接收传过来的参数 注意 :动态路由接收时使用的是 params方法同上
引入

import {ActivatedRoute} from '@angular/router'
再声明
constructor(public route:ActivatedRoute) {
接收: // 接收传过来的值
route.params.subscribe((res)=>{
console.log(res)
})
}

  

路由跳转的第一种方式-编程式跳转

第三种:动态js进行跳转 主要在方法对象中使用
html 中 注意里面传入的i值是 循环中 获取的索引值i

<li *ngFor="let item of resList ;let i=index">
<button (click)='gotoDevicePay(i)'>跳转到支付界面</button>
</li>

  在路由文件中进行配置

{ path: 'devicepay',component:DevicepayComponent},

js中 进行路由跳转还是先引入----再声明

定义点击事件

gotoDevicePay(key){
this.router.navigate(['/devicepay/'],{queryParams:{id:key}})//跳转路径 实现的是动态跳转数据
}

第四种:通过get方式可以传入多个参数到下一界面
引入 NavigationExtras

import { Router ,NavigationExtras} from '@angular/router';

定义一个 goNewsContent 方法执行跳转 , 用 NavigationExtras

goNewsContent(){
let navigationExtras: NavigationExtras = {
queryParams: { 'session_id': '123' },
fragment: 'anchor'
};
this.router.navigate(['/news'],navigationExtras);
}

获取跳转过来的页面接受传过来的值

constructor(private route: ActivatedRoute) {
console.log(this.route.queryParams);
}

  

angular路由跳转并传值的多种方式的更多相关文章

  1. angular中路由跳转并传值四种方式

    一.路由传值 步骤1 路由传递参数 注意 一定是要传递 索引值 let key = index 这种情况是在浏览器中可以显示对应的参数 这种的是问号 localhost:8080/news?id=2& ...

  2. Vue通信、传值的多种方式,详解

    Vue通信.传值的多种方式,详解 转自:https://blog.csdn.net/qq_35430000/article/details/79291287 一.通过路由带参数进行传值 ①两个组件 A ...

  3. Vue通信、传值的多种方式,详解(都是干货)

    Vue通信.传值的多种方式,详解(都是干货) 可参考博客: https://blog.csdn.net/qq_35430000/article/details/79291287

  4. vue通信、传值的多种方式(详细)

    转载自https://blog.csdn.net/qq_35430000/article/details/79291287

  5. 10 微信小程序路由跳转

    一.四种跳转方式 API路由详解 除了tabBar这种底部跳转的方法,我们还有路由跳转,以下四种方式: 1. wx.switchTab() :跳转到 tabBar 页面,并关闭其他所有非 tabBar ...

  6. ionic4 路由跳转、ionic4 路由跳转传值 NavController 返回上一页 、NavController 回到根

    1.普通路由跳转 <ion-button [routerLink]="['/pinfo']"> 跳转到详情 </ion-button> <ion-he ...

  7. Ionic5路由跳转传值复用

    1. 路由技术 ( 详细记录 ) 是笔记不是博文,觉得写的不够详细的可以使用Ctrl + W组合键 路由跳转页面 1. HTML 中使用 routerLink 属性路由进行跳转,传值时使用 query ...

  8. 16Flutter中的路由 基本路由 基本路由跳转传值(上)

    /* Flutter中的普通路由.普通路由传值.命名路由.命名路由传值 Flutter中的路由通俗的讲就是页面跳转.在Flutter中通过Navigator组件管理路由导航. 并提供了管理堆栈的方法. ...

  9. Angular和Ionic的路由跳转

    一.Angular和Ionic的路由跳转 Angular的路由跳转: constructor(private router:Router){    } .... this.router.navigat ...

  10. 路由传值及获取参数,路由跳转,路由检测,this.$route.query和this.$route.params接收参数,HttpGet请求拼接url参数

    配置动态路由参数id: routes: [ // 动态路径参数 以冒号开头 { path: '/user/:id', component: User } ] html路由跳转: <router- ...

随机推荐

  1. 如何通过OpenHarmony系统中集成的ffmpeg库和NAPI机制,实现更多的多媒体功能?

    简介 OpenAtom OpenHarmony(以下简称"OpenHarmony")作为"开源"世界的"连接器",不断为智能社会的发展提供源 ...

  2. Java基础知识:面试官必问的问题

    数据类型 基本类型 byte/8 char/16 short/16 int/32 float/32 long/64 double/64 boolean/~ boolean 只有两个值:true.fal ...

  3. Matplotlib绘图设置---坐标轴刻度和标签设置

    每个axes对象都有xaxis和yaxis属性,且xaxis和yaxis的每一个坐标轴都有主要刻度线/标签和次要刻度线/标签组成,标签位置通过一个Locator对象设置,标签格式通过一个Formatt ...

  4. django ORM 按月分组统计

    一.搭建环境,准备数据 1.1:新建项目 django-admin startproject Test 1.2:新建app python manage.py startapp app 1.3:设置 s ...

  5. Python语言Numpy包之Meshgrid 函数

    Meshgrid 函数的基本用法 在 Numpy 的官方文章里, meshgrid 函数的英文描述也显得文绉绉的,理解起来有些难度.可以这么理解, meshgrid 函数用两个坐标轴上的点在平面上画网 ...

  6. HDC2021技术分论坛:还有人不知道鸿蒙智联设备认证咋搞?

    作者:maxiansheng,华为鸿蒙智联认证测试专家 2021年5月18日,华为正式宣布原Work With HUAWEI HiLink和Powered by HarmonyOS品牌升级为Harmo ...

  7. 4天带你上手HarmonyOS ArkUI开发

    本次HarmonyOS ArkUI入门训练营课程--健康生活实战篇,手把手教大家如何制作一个合理膳食的APP前端Demo! 课程实战样例通过ArkUI声明式UI开发框架实现,只需用几行简单直观的声明式 ...

  8. 第十八篇:Django进级

    一.Django工程创建 二.Django 的 CBV和FBV 三.模板语言循环字典 四.Django基于正则表达式的URL 五.Django对应的路由名称 六.Django路由分发 七.Django ...

  9. github 小技巧

    前言 简单记一下github 小技巧,因为经常忘. 正文 就是如何快速搜索到自己想找的项目. 如果自己知道项目名,那么直接输入就可以搜索到. 如果不是,那么一般要通过高级搜索. https://git ...

  10. c# countDownEvent类

    前言 把异步先总结完吧. countDownEvent 这东西是干什么的呢? 比如说我们比赛跑步,我们需要得出的是第一二三名得出后就可以先统计出来,因为比较重要,后面没有获得获奖名次的可以后续统计出来 ...