Angular学习教程之RouterLink花式跳转


Posted in Javascript onMay 03, 2018

前言

除了使用Router的navigate()方法切换路由,Angular2还提供了一个指令用来 将一个DOM对象增强为路由入口:

@View({
directives:[RouterOutlet,RouterLink]
template : `<nav>
<b router-link="video">video</b> | 
<b router-link="music">music</b>
</nav>
<router-outlet></router-outlet>`
})

RouterLink指令为宿主DOM对象添加click事件监听,在触发时调用Router的 navigate()方法进行路由。

不过本文主要介绍的是关于Angular之RouterLink花式跳转的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

routerLink本身支持两种写法:

<a routerLink="detail">
</a>

<a [routerLink]="['detail']">
</a>

routerLink的值有哪些写法,又有什么区别呢?

假设当前路由为

`http://localhost:4200/#/doc/license`

写法1 : 绝对路径  / + 路由名字

<!--跳到 http://localhost:4200/#/doc/license -->
 <a [routerLink]="['/doc/demo']" >跳呀跳</a>
 
 <!--跳到 http://localhost:4200/#/demo -->
 <a [routerLink]="['/demo']" >跳呀跳</a>

那么url是

http://localhost:4200/#/doc/demo上跳转,即 http://localhost:4200/#/ + 你要跳转的绝对路径。

写法2 : 一个路由名字 路由名字

<a [routerLink]="['demo']" >跳呀跳</a>

那么url是http://localhost:4200/#/doc/license/(demo),即http://localhost:4200/#/doc/license + 你要跳转的绝对路径,这时候它会给你的路由加些东西变成 /(demo),跳转不了。

写法3 :相对路径 ../路由名字

<a [routerLink]="['../demo']" >跳呀跳</a>

那么url是

http://localhost:4200/#/doc/demo,即 http://localhost:4200/#/doc + 你要跳转的相对路径。它会从上一级开始寻找。

写法4  : ./路由名字, 即现在的路由+你写的要跳去的路由

<a [routerLink]="['./demo']" >跳呀跳</a>

那么url是

http://localhost:4200/#/doc/license/demo上,即 http://localhost:4200/#/doc/license + 你要跳转的相对路径。它会从当前路由的下一级开始寻找此匹配的路由进行跳转。

| 更多API用法更新于 github

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
Javascript图像处理思路及实现代码
Dec 25 Javascript
jQuery客户端分页实例代码
Nov 18 Javascript
js 异步操作回调函数如何控制执行顺序
Dec 24 Javascript
javascript中的括号()用法小结
Apr 14 Javascript
浅谈JavaScript的Polymer框架中的behaviors对象
Jul 29 Javascript
AngularJS表格详解及示例代码
Aug 17 Javascript
解决jQuery ajax动态新增节点无法触发点击事件的问题
May 24 jQuery
Node层模拟实现multipart表单的文件上传示例
Jan 02 Javascript
Node.js使用supervisor进行开发中调试的方法
Mar 26 Javascript
vue+echarts实现可拖动节点的折线图(支持拖动方向和上下限的设置)
Apr 12 Javascript
vue中watch和computed的区别与使用方法
Aug 23 Javascript
antd配置config-overrides.js文件的操作
Oct 31 Javascript
JS中判断某个字符串是否包含另一个字符串的五种方法
May 03 #Javascript
Vue表单类的父子组件数据传递示例
May 03 #Javascript
Webpack path与publicPath的区别详解
May 03 #Javascript
Webpack中publicPath路径问题详解
May 03 #Javascript
Angular Renderer (渲染器)的具体使用
May 03 #Javascript
react router4+redux实现路由权限控制的方法
May 03 #Javascript
vue.js学习笔记之v-bind和v-on解析
May 03 #Javascript
You might like
超神学院:鹤熙已踏入神圣领域,实力不比凯莎弱
2020/03/02 国漫
日本收入最高的漫画家:海贼王作者版税年收入高达8.45亿元
2020/03/04 日漫
剧场版动画《PSYCHO-PASS 3 FIRST INSPECTOR》3月27日日本上映!
2020/03/06 日漫
php下用GD生成生成缩略图的两个选择和区别
2007/04/17 PHP
Yii2 ActiveRecord多表关联及多表关联搜索的实现
2016/06/30 PHP
PHP基于自定义类随机生成姓名的方法示例
2017/08/05 PHP
JS打开新窗口的2种方式
2013/04/18 Javascript
JS判定是否原生方法
2013/07/22 Javascript
js实现的折叠导航示例
2013/11/29 Javascript
使用JS画图之点、线、面
2015/01/12 Javascript
js实现无限级树形导航列表效果代码
2015/09/23 Javascript
Express实现前端后端通信上传图片之存储数据库(mysql)傻瓜式教程(二)
2015/12/10 Javascript
canvas绘制表盘时钟
2017/01/23 Javascript
JS 插件dropload下拉刷新、上拉加载使用小结
2017/04/13 Javascript
Vue.js教程之axios与网络传输的学习实践
2017/04/29 Javascript
jQuery条件分页 代替离线查询(附代码)
2017/08/17 jQuery
详解wow.js中各种特效对应的类名
2017/09/13 Javascript
vue技术分享之你可能不知道的7个秘密
2018/04/09 Javascript
Node.js中你不可不精的Stream(流)
2018/06/08 Javascript
Angular动画实现的2种方式以及添加购物车动画实例代码
2018/08/09 Javascript
微信小程序实现Swiper轮播图效果
2019/11/22 Javascript
基于vue实现探探滑动组件功能
2020/05/29 Javascript
jQuery实现回到顶部效果
2020/10/19 jQuery
如何使用gpu.js改善JavaScript的性能
2020/12/01 Javascript
Python多线程同步Lock、RLock、Semaphore、Event实例
2014/11/21 Python
python打开文件并获取文件相关属性的方法
2015/04/23 Python
python使用配置文件过程详解
2019/12/28 Python
python如何利用Mitmproxy抓包
2020/10/10 Python
python 使用tkinter+you-get实现视频下载器
2020/11/17 Python
C语言笔试题回忆
2015/04/02 面试题
初中地理教学反思
2014/01/11 职场文书
企业法律事务工作总结
2015/08/11 职场文书
学校学期工作总结
2015/08/13 职场文书
消防安全培训工作总结
2015/10/23 职场文书
导游词之云南省玉龙雪山
2019/12/19 职场文书
Python中OpenCV实现简单车牌字符切割
2021/06/11 Python