angular路由
一、生成router项目
ng new router --routing
二、angular rout导航
五个参数:
1、routes 路由配置。保存着那个url对应展示哪个组件,以及在哪个routerOutLet展示组件(放在模块中的。包括path属性、component属性)
2、routerOutLet 在HTML中标记内容呈现位置的占位符指令(显示组件展示的位置)
3、router 负责运行时执行路由的对象。可以调用其navigate()和navigateByUrl()方法来导航到一个指定的路由(控制器中用)
4、routerLink 在html中申明路由导航用的指令(html中用的。放在a标签上。在模板中生成链接)
5、acticatedRoute 当前激活的路由对象,保存着当前路由的信息,如路由地址、路由参数等
三、传递数据
在查询参数中传递数据
/product?id=1&name=2 => ActivatedRouter.queryParams[id]
1、在父节点的a标签中写入:
   [routerLink]="['./product']" [queryParams]="{id:1}"
2、在子节点的ts文件中写入:
 private productId:number;
  constructor(private routeInfo:ActivatedRoute) { }
  ngOnInit() {
    this.productId =this.routeInfo.snapshot.queryParams["id"];
  }
需要依赖注入:import { ActivatedRoute } from '@angular/router';
3、子节点的html中引入
<p>商品详情是{{productId}}</p>
在路由的路径中传递数据
{path:/product/id}  =>  /product/1  => ActivitedRoute.params[id]  
在路由的配置中传递参数
{path:/product,conponent:ProductComponent,data:[{isProd:true}]}  
=>  ActivatedRouter.data[0][isProd]
 
                     
                    
                 
                    
                 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号