首页 > 其他分享 >详解Angular路由之子路由

详解Angular路由之子路由

时间:2023-06-10 12:23:10浏览次数:48  
标签:component seller 销售员 详解 组件 path Angular 路由

原文:https://www.jb51.net/article/213074.htm

一、子路由语法

二、实例

在商品详情页面,除了显示商品id信息,还显示了商品描述,和销售员的信息。

通过子路由实现商品描述组件和销售员信息组件展示在商品详情组件内部。

1、新建2个组件修改其内容

1 2 ng g component productDesc ng g component sellerInfo

重点是修改销售员信息组件,显示销售员ID。

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 import { Component, OnInit } from '@angular/core'; import { ActivatedRoute } from '@angular/router';   @Component({   selector: 'app-seller-info',   templateUrl: './seller-info.component.html',   styleUrls: ['./seller-info.component.css'] }) export class SellerInfoComponent implements OnInit {   private sellerId: number;   constructor(private routeInfo: ActivatedRoute) { }     ngOnInit() {     this.sellerId = this.routeInfo.snapshot.params["id"];   }   }

2、修改路由配置

给商品组件加上子路由

1 2 3 4 5 6 7 8 9 const routes: Routes = [   { path: '', redirectTo : 'home',pathMatch:'full' }, //路径为空   { path: 'home', component: HomeComponent },   { path: 'product/:id', component: ProductComponent, children:[     { path: '', component : ProductDescComponent },     { path: 'seller/:id', component : SellerInfoComponent }   ] },   { path: '**', component: Code404Component } ];

3、修改product.component.ts的模版

注意:routerLink里要配置成./,不能再用/。

1 2 3 4 5 6 7 8 9 10 <p>   这里是商品信息组件 </p> <p>   商品id是: {{productId}} </p>   <a [routerLink]="['./']">商品描述</a> <a [routerLink]="['./seller',99]">销售员信息</a> <router-outlet></router-outlet>

效果:

主路由是/product/2,子路由为空字符串:

主路由的商品详情组件显示出来了,子路由的空字符串对应的商品描述组件也显示出来了。

点销售员信息链接:

URL路径变成:http://localhost:4201/product/2/seller/99。

子路由seller/99,对应的sellerInfo组件也展示出来。

注意:

1、插座router-out形成父子关系,可以无限嵌套

2、所有的路由信息都是在模块层,在app.routing.module.ts中配置的。

路由信息都是在模块层,所有的组件本身,并不知道任何跟路由相关的信息。

插座之间的父子关系——子路由。

插座之间的兄弟关系——辅助路由。

以上就是详解Angular路由之子路由的详细内容,更多关于Angular的资料请关注脚本之家其它相关文章!

标签:component,seller,销售员,详解,组件,path,Angular,路由
From: https://www.cnblogs.com/bruce1992/p/17471054.html

相关文章

  • 路由器学习之MPLS
    1.主机不会发送和接收携带标签的数据包,因而需要特定路由器为数据包添加标签并由其他路由器去除标签,标签压入和弹出动作2.MPLS依赖CEF(思科快速转发),路由器根据动态路由协议、静态路由、直连路由创建RIB(路由信息库),之后创建FIB(转发信息库)。3.LSR(标签交换路由器,labelswitchrouter)......
  • 信道容量详解
    本专栏包含信息论与编码的核心知识,按知识点组织,可作为教学或学习的参考。markdown版本已归档至【Github仓库:<https://github.com/timerring/information-theory>】或者公众号【AIShareLab】回复信息论获取。信道容量写出并解释信道容量的定义分析计算如下信道的信道容量无噪无损......
  • 计算机字符编码详解
    转自阿里云社区:https://developer.aliyun.com/article/1060857?spm=a2c6h.12873639.article-detail.38.4b5972357GYIBO版权声明:链接内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。......
  • python之requests库详解
    1.requests库详解发送http请求,接受http响应的库安装:pipinstallrequests1.1常用方法requests.get()--->defget(url,params=None,**kwargs)#发送get请求url:接口请求地址params:是get请求用于传参,这个参数会自动以?的方式加到url之后,多个参数之间用&分割**kwargs:可变......
  • 详解Python中的位运算符规则、原理与用法
    在Python中,位运算符包括位与(&)、位或(|)、位求反(~)、位异或(^)、左移位(<<)和右移位(>>)。1.运算方法与规则位运算符只能适用于整数,其总体运算规则为:首先把整数转换为二进制表示形式,按最低位对齐,短的高位补0,然后进行位运算,最后把得到的二进制转换为十进制数。位与运算符运算规则:0&0=0&1=1&0=......
  • Hive执行计划之什么是hiveSQL向量化模式及优化详解
    Hive开启向量化模式也是hiveSQL优化方法中的一种,可以提升hive查询速率,也叫hive矢量化。问题1:那么什么是hive向量化模式呢?问题2:hive向量化什么情况下可以被使用,或者说它有哪些使用场景呢?问题3:如何查看hive向量化使用的相关信息?1.什么是hive向量化模式hive向量化模式是hive的一......
  • 详解Python生成器函数和生成器对象的原理和用法
    包含yield语句的函数可以用来创建生成器对象,这样的函数也称生成器函数。yield语句与return语句的作用相似,都是用来从函数中返回值。与return语句不同的是,return语句一旦执行会立刻结束函数的运行,而每次执行到yield语句并返回一个值之后会暂停后面代码的执行,下次通过生成器对象的__n......
  • 详解Python中的浅复制与深复制
    列表对象的copy()方法返回列表的浅复制。所谓浅复制,是指生产一个新的列表,并且把原列表中所有元素的引用都复制到新列表中。如果原列表中只包含整数、实数、复数等基本类型或元组、字符串这样的不可变类型,一般是没有问题的。但是,如果原列表中包含列表之类的可变数据类型,由于浅复制时......
  • 图文详解丨iOS App上架全流程及审核避坑指南
    到了2021年,虽然网上也有大牛写过很多IOSApp上架流程资料,但随着苹果发布机制的微调有些已经过时了。我就趁着这次刚刚发布成功的鲜活经验,记录下来,做一下补充。1、首先得注册AppleDeveloper的开发者账号,最后如果要上架苹果商店,这个账号是要交年费的,核算下来大概600多元人民币。......
  • 图文详解丨iOS App上架全流程及审核避坑指南
    图文详解丨iOSApp上架全流程及审核避坑指南到了2021年,虽然网上也有大牛写过很多IOSApp上架流程资料,但随着苹果发布机制的微调有些已经过时了。我就趁着这次刚刚发布成功的鲜活经验,记录下来,做一下补充。1、首先得注册AppleDeveloper的开发者账号,最后如果要上架苹果商店,这个账......