本文摘自PHP中文网,作者青灯夜游,侵删。
本篇文章给大家介绍一下Angular Router路由跳转中的navigateByUrl与navigate,看看navigate()和navigateByUrl()的使用方法。开始进入实战前,我们先来看下官方文档中对navigateByUrl、navigate的介绍。【相关教程推荐:《angular教程》】
navigateByUrl() :
定义:基于所提供的 URL 进行导航,必须使用绝对路径
参数:url(string | UrlReee )、extras(一个包含一组属性的对象,它会修改导航策略)
返回值:返回一个Promise。当导航成功时,它会解析成true;导航失败或者出错时,它会解析成false
ps:对于navigateByUrl的用法和定义官方已经交代的很清楚了。但是,如果我们对其中的定义绝对路径和相对路径的概念有点记忆模糊了,那么,我,直接给出例子,就不麻烦小宝贝们再去找度娘了,谁让我贴心呐
1 2 |
|
navigate():
定义:基于所提供的命令数组和起点路由进行导航。 如果没有指定起点路由,则从根路由开始进行绝对导航
参数:commands(any[] )、extras
返回值:返回一个Promise。当导航成功时,它会解析成true;导航失败时,它会解析成false;导航出错时,它会拒绝(reject)
值得注意的点是,navigate的第一个参数必须是数组形式的即 any[]。
言归正传,回归到功能上,这两个方法都是在angular种进行路由跳转的。那么我们在实际项目中有以下常见的xxx种用法,我们 一 一 来看看吧~~
实战中,我们先来定义三个路由,分别是“路由a、路由b、路由c”。
这三个路由分别是同级路由并且都在根目录下。
navigateByUrl
1 2 3 4 5 6 |
|
navigateByUrl的用法比较简单,容易理解,用法也比较单一。我们主要来介绍以下navigate的用法哈~~
navigate
1、路由b跳转到路由c(以根路由为基础进行跳转)
1 2 |
|
2、路由b跳转到路由c(以当前路由为基础进行跳转)
1 2 |
|
3、路由b跳转到路由b(以当前路由为基础进行跳转)
1 |
|
4、路由b跳转到路由c(路由中携带锚点进行跳转)
1 2 3 |
|
5、路由b跳转到路由c(路由中传参数进行跳转)
相关阅读 >>
详解Angular使用controlvalueaccessor实现自定义表单控件
深入了解Angular中的hostbinding和hostlistener装饰器
更多相关阅读请进入《Angular》频道 >>
Vue.js 设计与实现 基于Vue.js 3 深入解析Vue.js 设计细节
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者