博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Angular5路由传值方式及其相关问题
阅读量:7144 次
发布时间:2019-06-29

本文共 1246 字,大约阅读时间需要 4 分钟。

目前Angular已经升级到了稳定版本Angular5,这次升级更小更快以及更稳定!路由可以说是Angular甚至是单页应用的核心部分了吧!在angularjs中的路由最大的缺点就是无法嵌套路由,在Angular中解决了这个问题!在Angular中路由不仅仅是页面跳转,其中还有一项叫英雄列表跳转英雄详情!在诸多的列表,不可能给每个英雄做一个详情页,于是乎路由参数起到作用了!通过路由传入参数识别那个英雄的详情!

现在对于路由传值进行详解,首先一种方式是官网的导航到详情的单值id传入,另一种是多数据传入!
1.单值传入

['/hero', hero.id]

以上是官网示例

下面我们用我自己的示例介绍一下:
首先是列表页,以及跳转方式

{

{item.name}}

然后是配置路由:(单值传入的方式需要在详情组件路由配置)

{    path:'listDetail/:id',    component:ListDetailComponent  },

传入后就是取到参数,在详情组件的ngOnInit生命周期获取参数

ngOnInit() {    this.route.params      .subscribe((params: Params) => {        this.id = params['id'];        console.log(this.id);        console.log('传值');        console.log(params)      })  }

2.我们在平时的复杂的业务场景我们需要传多个数据,这时候该怎么办呢?这时候我们就用到了queryParams

{

{data.name}}

这里数据我是直接拿上去的,同样你可以组织好数据,一个参数放上去,简化html结构,现在有个问题,这样多值传入路由参数怎么配置呢?/:id/:id???我这个参数多少也不是固定的咋办?其实这种方式不需要配置路由!你只需要传入和取到数据就可以了!

ngOnInit() {    this.route.queryParams      .subscribe((params: Params) => {        this.id = params['id'];        this.state = params['state'];        console.log(params)        console.log(this.id);        console.log(this.state);      })  }

以上就是Angular路由传值两种方式!希望对大家有帮助!可以帮到大家的话,大家帮我点个星吧点个关注吧!刚入驻这个博客不是很久!嘿嘿嘿.

转载地址:http://uvwgl.baihongyu.com/

你可能感兴趣的文章
Centos 安装postgresql
查看>>
JavaFX 已从 JDK 中独立拆分,早期预览版开放下载
查看>>
如何应对服务器压力?服务器横向扩展(加机器)策略漫谈
查看>>
avalon js单页面滑动切换
查看>>
垃圾回收机制算法分析
查看>>
特斯拉史上最重要发布会?Elon Musk 交底全自动驾驶计划 ...
查看>>
Unity组件:Audio Chorus Filter PRO only 音频合声滤波器 ...
查看>>
Flutter MergeableMaterialItem
查看>>
开源监控利器Prometheus初探
查看>>
性能优化技巧 - 查找
查看>>
在阿里,我们如何管理测试环境
查看>>
Kubernetes 实战教学,手把手教您如何在 K8s 平台上使用 Compose(一) ...
查看>>
MultipartFile文件上传
查看>>
如何不花钱得到一辆特斯拉Model 3,挖漏就成
查看>>
python设计模式(六):桥接模式
查看>>
手写Java线程池
查看>>
编排管理成容器云关键 Kubernetes(K8s)和Swarm对比分析 ...
查看>>
Spring Cloud Hystrix源码分析
查看>>
AMD的双向田忌赛马:7nm中端CPU挑落顶级i9,旗舰GPU只对位NV三当家 | CES 2019 ...
查看>>
云服务器ECS出现速度变慢 以及突然断开怎么办? ...
查看>>