对angular4子路由&辅助路由详解


Posted in Javascript onOctober 09, 2018

子路由学习笔记:

子路由和路由一样的配置方法,都是声明好路由的入口,路由的路径,路由的出口,不一样的是自路由是嵌套在副路由里面的并且由children表明这是子路由且可以无限循环嵌套。

路由入口:需要注意的是在子路由的入口处不能再用/来跟路径名,/会告诉angular去找跟组件,就会找到跟组件对应的模块,子路由需要用./

1.设置根路由入口:在模板(html)上设置,路由入口就是点击哪里开始路由到新组件(点击首页到首页去)

<a [routerLink]="['/']">主页</a>
<a [routerLink]="['/product']" [queryParams]="{id:1}">商品详情</a>
<a [routerLink]="['/home',2]">主页</a>

子路由入口:(子路由是./)字路由是路由里面套的路由可以无限嵌套。

<a [routerLink]="['./']">商品描述</a>
<a [routerLink]="['./seller',99]">商品描述</a>

路由出口(路由出口是指新的组件将在哪里显示。入口指定什么时候加载新组件,出口指加载完的组件显示在哪里):路由的出口和入口均在模板里面设置

<router-outlet></router-outlet>

路由路径:当路由的出口入口都设置好了的时候就来配置路由的路径。路径指定了当访问哪条路径的时候加载哪个模板

const routes:Routes=[
 {path:'',redirectTo:'/home',pathMatch:'full'},
 {path:'product',component:ProductComponent,children:[
 {path:'',component:ProductdescComponent} ,
 {path:'seller/:id',component:SellerComponent}
 ]},
 {path:'home/:id',component:HomeComponent},//整个路径被划分成两段变量,一段是路径,一段时参数
 {path:'**',component:Code404Component}//通配符,当路径找不到的时候访问
];

辅助路由:

分三步:

1.在主路由的插座也就是出口处定义一个辅助路由插座:也就是定义个辅助路由的出口:辅助路由的出口定义和主路由一样,只是辅助路由比主路由多了一个name属性:用来指定辅助路由显示那几个组件

这里指辅助路由显示outlet叫做aux对应的组件

<router-outlet></router-outlet>
<router-outlet name="aux"></router-outlet>

2.配置辅助路由路径:必须加一个outlet属性,指定该路由显示在名字叫什么的辅助路由出口(插座)上;

这里指当访问chat时加载XchatComponnet显示在名字叫aux的这个辅助路由出处。

{path:'chat',component:XhatComponent,outlet:'aux'},

3.配置入口参数:辅助路由的参数将是一个对象,这个对象里面有一个属性outlets,这个属性的值也是一个对象,该对象里面传一个name属性指定要显示的辅助路由的名字,值是该辅助路由需要显示的组件路径;比如下面:名字叫aux的辅助路由将显示路径为chat的组件

需要注意的是当不希望辅助路由显示的时候可以吧name设置为null。

这里指点击开始聊天的时候加载路径为chat对应的组件,显示在名字叫做aux的辅助路由出口上。

<a [routerLink]="[{outlets:{aux:'chat'}}]">开始聊天</a>
<a [routerLink]="[{outlets:{aux:null}}]">结束聊天</a>

当希望跳转辅助路由的同时主路由跳转到指定的组件的时候:可以在入口文件加一个属性:primary,属性的值是需要跳转的主组件的路由路径例如下面点击聊天的同时不管目前在哪个组件下主路由都会跳转回home路径下的组件

<a [routerLink]="[{outlets:{primary:home, aux:'chat'}}]">开始聊天</a>

以上这篇对angular4子路由&辅助路由详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS按位非(~)运算符与~~运算符的理解分析
Jul 31 Javascript
非常强大的 jQuery.AsyncBox 弹出对话框插件
Aug 29 Javascript
JQuery给网页更换皮肤的方法
May 30 Javascript
jQuery选择器基础入门教程
May 10 Javascript
jQuery unbind 删除绑定事件详解
May 24 Javascript
基于Vuejs框架实现翻页组件
Jun 29 Javascript
使用原生js写ajax实例(推荐)
May 31 Javascript
使用vue制作FullPage页面滚动效果
Aug 21 Javascript
EasyUI实现下拉框多选功能
Nov 07 Javascript
vue.extend与vue.component的区别和联系
Sep 19 Javascript
JavaScript遍历数组和对象的元素简单操作示例
Jul 09 Javascript
vue+springboot实现登录验证码
May 27 Vue.js
angular 未登录状态拦截路由跳转的方法
Oct 09 #Javascript
AngularJs1.x自定义指令独立作用域的函数传入参数方法
Oct 09 #Javascript
angularJS1 url中携带参数的获取方法
Oct 09 #Javascript
AngularJS $http post 传递参数数据的方法
Oct 09 #Javascript
详解基于vue-cli3.0如何构建功能完善的前端架子
Oct 09 #Javascript
angularJS自定义directive之带参方法传递详解
Oct 09 #Javascript
Vue中的作用域CSS和CSS模块的区别
Oct 09 #Javascript
You might like
php IP及IP段进行访问限制的代码
2008/12/17 PHP
一些被忽视的PHP函数(简单整理)
2010/04/30 PHP
php调用dll的实例操作动画与代码分享
2012/08/14 PHP
php计算两个日期相差天数的方法
2015/03/14 PHP
基于PHP实现简单的随机抽奖小程序
2016/01/05 PHP
php爬取天猫和淘宝商品数据
2018/02/23 PHP
关于laravel框架中的常用目录路径函数
2019/10/23 PHP
js自动闭合html标签(自动补全html标记)
2012/10/04 Javascript
js控制web打印(局部打印)方法整理
2013/05/29 Javascript
js全屏显示显示代码的三种方法
2013/11/11 Javascript
JSON格式的键盘编码对照表
2015/01/29 Javascript
基于jQuery+Cookie实现的防止刷新的在线考试倒计时
2015/06/19 Javascript
JS实现仿QQ效果的三级竖向菜单
2015/09/25 Javascript
jQuery中iframe的操作(点击按钮新增窗口)
2016/04/20 Javascript
深入理解jQuery 事件处理
2016/06/14 Javascript
教你JS中的运算符乘方、开方及变量格式转换
2016/08/09 Javascript
微信小程序 图片等比例缩放(图片自适应屏幕)
2016/11/16 Javascript
jQuery 插件封装的方法
2016/11/16 Javascript
AngularJS中指令的四种基本形式实例分析
2016/11/22 Javascript
NodeJs使用Mysql模块实现事务处理实例
2017/05/31 NodeJs
webpack打包react项目的实现方法
2018/06/21 Javascript
Angular4.x Event (DOM事件和自定义事件详解)
2018/10/09 Javascript
Layui 动态禁止select下拉的例子
2019/09/03 Javascript
[02:07]DOTA2超级联赛专访BBC:难忘网吧超神经历
2013/06/09 DOTA
浅析python递归函数和河内塔问题
2017/04/18 Python
python修改txt文件中的某一项方法
2018/12/29 Python
HTML5 b和i标记将被赋予真正的语义
2009/07/16 HTML / CSS
使用css创建三角形 使用CSS3创建3d四面体原理及代码(html5实践)
2013/01/06 HTML / CSS
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?
2016/08/18 面试题
会计应届生的自荐信
2013/12/13 职场文书
大学自主招生推荐信
2014/05/10 职场文书
淘宝店策划方案
2014/06/07 职场文书
铣床操作工岗位职责
2014/06/13 职场文书
2015年行政人事部工作总结
2015/05/13 职场文书
使用javascript解析二维码的三种方式
2021/11/11 Javascript
关于CSS自定义属性与前端页面的主题切换问题
2022/03/21 HTML / CSS