使用角度路由器发送数据

时间:2017-07-03 03:35:35

标签: javascript angular

我有一个搜索框,您可以从一个充满电视节目的阵列(及其相应的ID)进行搜索。

landingpage.component.html

class func login(username: String, password: String, completion: @escaping (Result) -> Void){
    ...
    let user = makeUserWithSomeData()
    completion(Result.Success(user))
}

当用户点击某个节目时,它会将该节目的ID作为参数传递给新路线,并加载我的 resultpage.component 。 selectShow函数只记录所选节目的名称。

我的问题:

我想通过Angular路由器将show( list.show )值发送到 resultpage.component 。我似乎无法在文档中找到有关如何执行此操作的任何信息。

如何使用Angular路由器将 list.show 数据传递给我的resultpage.component?

1 个答案:

答案 0 :(得分:0)

由于当您访问list.id链接时,您需要获取数据的路径不会超过/details

这通常是通过为数据

创建Resolve来完成的

https://angular.io/api/router/Resolve

在您访问/details之前,它会检查您是否为该路线注册了任何解析器。

然后,您就可以从路由器获取该数据。

@Component()
export class DetailComponent implements OnInit {

  listDetails: Details;

  constructor(private route: ActivatedRoute) {}

  ngOnInit() {
    this.listDetails = this.route.snapshot.data['details'];
  }
}