浅谈angularJS2中的界面跳转方法


Posted in Javascript onAugust 31, 2018

链接参数数组保存路由导航时所需的成分:

指向目标组件的那个路由的路径(path)

必备路由参数和可选路由参数,它们将进入该路由的URL

我们可以把RouterLink指令绑定到一个数组,就像这样:

<a [routerLink]="['/heroes']">Heroes</a>

在指定路由参数时,我们写过一个双元素的数组,就像这样:

this.router.navigate(['/hero', hero.id]);

我们可以在对象中提供可选的路由参数,就像这样:

<a [routerLink]="['/crisis-center', { foo: 'foo' }]">Crisis Center</a>

这三个例子覆盖了我们在单级路由的应用中所需的一切。在添加一个像危机中心一样的子路由时,我们创建新链接数组组合。

回忆一下,我们曾为危机中心指定过一个默认的子路由,以便能使用这种简单的RouterLink。

<a [routerLink]="['/crisis-center']">Crisis Center</a>

让我们把它分解出来:

数组中的第一个条目标记出了父路由('/crisis-center')。

这个父路由没有参数,因此这步已经完成了。

没有默认的子路由,因此我们得选取一个。

我们决定跳转到CrisisListComponent,它的路由路径是'/',但我们不用显式的添加它。

哇!['/crisis-center']。

在下一步,我们会用到它。这次,我们要构建一个从根组件往下导航到“巨龙危机”时的链接参数数组:

数组中的第一个条目用来标记出父路由('/crisis-center')。

这个父路由没有参数,因此这步已经完成了。

数组中的第二个条目('/:id')用来标记出到指定危机的详情页的子路由。

详细的子路由需要一个id路由参数。

我们把巨龙危机的id添加为该数组中的第二个条目(1)。

看起来是这样的:

<a [routerLink]="['/crisis-center', 1]">Dragon Crisis</a>

如果想,我们还能单独使用危机中心的路由来重定义AppComponent的模板。

template: `
 <h1 class="title">Angular Router</h1>
 <nav>
 <a [routerLink]="['/crisis-center']">Crisis Center</a>
 <a [routerLink]="['/crisis-center/1', { foo: 'foo' }]">Dragon Crisis</a>
 <a [routerLink]="['/crisis-center/2']">Shark Crisis</a>
 </nav>
 <router-outlet></router-outlet>
`

总结:我们可以用一级、两级或多级路由来写应用程序。 链接参数数组提供了用来表示任意深度路由的链接参数数组以及任意合法的路由参数序列、必须的路由器参数以及可选的路由参数对象。

以上这篇浅谈angularJS2中的界面跳转方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 用函数语句和表达式定义函数的区别详解
Jan 06 Javascript
IE8中使用javascript动态加载CSS的解决方法
Jun 17 Javascript
JavaScript实现找出数组中最长的连续数字序列
Sep 03 Javascript
jQuery检测返回值的数据类型
Jul 13 Javascript
javascript实现在下拉列表中显示多级树形菜单的方法
Aug 12 Javascript
jQuery动态增减行的实例代码解析(推荐)
Dec 05 Javascript
AngularJS之页面跳转Route实例代码
Mar 10 Javascript
ReactNative之键盘Keyboard的弹出与消失示例
Jul 11 Javascript
vue 使用自定义指令实现表单校验的方法
Aug 28 Javascript
使用异步组件优化Vue应用程序的性能
Apr 28 Javascript
js实现滑动进度条效果
Aug 21 Javascript
解决vue 使用axios.all()方法发起多个请求控制台报错的问题
Nov 09 Javascript
详解vue使用vue-layer-mobile组件实现toast,loading效果
Aug 31 #Javascript
Angular2之二级路由详解
Aug 31 #Javascript
基于jQuery ztree实现表格风格的树状结构
Aug 31 #jQuery
详解Vue CLI3配置之filenameHashing使用和源码设计使用和源码设计
Aug 31 #Javascript
Bootstrap Table 双击、单击行获取该行及全表内容
Aug 31 #Javascript
vue通过滚动行为实现从列表到详情,返回列表原位置的方法
Aug 31 #Javascript
详解小程序输入框闪烁及重影BUG解决方案
Aug 31 #Javascript
You might like
DISCUZ 论坛管理员密码忘记的解决方法
2009/05/14 PHP
PHP iconv 解决utf-8和gb2312编码转换问题
2010/04/12 PHP
php定时计划任务的实现方法详解
2013/06/06 PHP
PHP之APC缓存详细介绍 apc模块安装
2014/01/13 PHP
PHP中require和include路径问题详解
2014/12/25 PHP
IOS 开发之NSDictionary转换成JSON字符串
2017/08/14 PHP
js鼠标左右键 键盘值小结
2010/06/11 Javascript
node.js中的path.resolve方法使用说明
2014/12/08 Javascript
js+html5通过canvas指定开始和结束点绘制线条的方法
2015/06/05 Javascript
jquery动态增加删减表格行特效
2015/11/20 Javascript
原生Javascript插件开发实践
2017/01/09 Javascript
angular 动态组件类型详解(四种组件类型)
2017/02/22 Javascript
jQuery中hover方法搭配css的hover选择器,实现选中元素突出显示方法
2017/05/08 jQuery
前端主流框架vue学习笔记第一篇
2017/07/26 Javascript
javascript原生封装一个淡入淡出效果的函数测试实例代码
2018/03/19 Javascript
JS自定义对象创建与简单使用方法示例
2020/01/15 Javascript
[01:08]DOTA2次级职业联赛 - Shield战队宣传片
2014/12/01 DOTA
[03:02]辉夜杯主赛事第二日 每日之星
2015/12/27 DOTA
python压缩文件夹内所有文件为zip文件的方法
2015/06/20 Python
Python的Django框架中消息通知的计数器实现教程
2016/06/13 Python
浅谈Python 对象内存占用
2016/07/15 Python
利用pandas将numpy数组导出生成excel的实例
2018/06/14 Python
Python3 批量扫描端口的例子
2019/07/25 Python
使用python-opencv读取视频,计算视频总帧数及FPS的实现
2019/12/10 Python
Matplotlib绘制雷达图和三维图的示例代码
2020/01/07 Python
python实现简单颜色识别程序
2020/02/19 Python
python实现AdaBoost算法的示例
2020/10/03 Python
结合CSS3的新特性来总结垂直居中的实现方法
2016/05/30 HTML / CSS
幼儿园师德演讲稿
2014/05/06 职场文书
积极向上的团队口号
2014/06/06 职场文书
暑假学习心得体会
2014/09/02 职场文书
2014年全国爱牙日宣传活动方案
2014/09/21 职场文书
2014年班主任工作总结
2014/11/08 职场文书
学生上课迟到检讨书
2015/01/01 职场文书
公司内部升职自荐信
2015/03/27 职场文书
2015年销售人员工作总结
2015/04/07 职场文书