Issue 1:
From @DanWahlin on June 18, 2016 4:39

I know the API is still being worked on at this point, but I wanted to add my two cents on route parameter access and the APIs after working with them quite a bit lately. Simplifying the overall process could really be helpful. Here's one scenario I'm running into a lot involving parent route parameters that feels much too verbose currently:

Route:

/customer/2/details

Snapshot API to Get id Route Parameter:

const id = +this.router.routerState.parent(this.route).snapshot.params['id'];

Observable API to Get id Route Parameter:

this.router.routerState.parent(this.route)
.params
.subscribe(params => {
const id = +params['id'];
//do something with id
this.dataService.getCustomer(id)
.subscribe((customer: ICustomer) => this.customer = customer);
});
//With the code this way I think I'd have to unsubscribe too?

Suggested API:

I know that ActivatedRoute doesn't currently have a parent property, but something like the following would really simplify this fairly common scenario (this uses a snapshot rather than an observable):

//Move up to parent route and grab the id param
const id = +this.route.parent.params['id'];

Thanks for all the hard work on the router so far - really like the direction it's going. I just wanted to document a few ideas since the API is still being worked on and I think there are definitely some opportunities to simplify things along the way.

Copied from original issue: angular/vladivostok#81

Issue 2:
I'm submitting a feature request

I'm reporting this issue by @DanWahlin that I found in google cache from the old router repository that was deleted when you moved the router to the angular repository. The text is copy pasted from the old issue (https://github.com/angular/vladivostok/issues/81):

start of copy paste

I know the API is still being worked on at this point, but I wanted to add my two cents on route parameter access and the APIs after working with them quite a bit lately. Simplifying the overall process could really be helpful. Here's one scenario I'm running into a lot involving parent route parameters that feels much too verbose currently:

Route:

/customer/2/details

Snapshot API to Get id Route Parameter:

const id = +this.router.routerState.parent(this.route).snapshot.params['id'];

Observable API to Get id Route Parameter:

this.router.routerState.parent(this.route)
.params
.subscribe(params => {
const id = +params['id'];
//do something with id
this.dataService.getCustomer(id)
.subscribe((customer: ICustomer) => this.customer = customer);
});
// With the code this way I think I'd have to unsubscribe too?

Suggested API:

I know that ActivatedRoute doesn't currently have a parent property, but something like the following would really simplify this fairly common scenario (this uses a snapshot rather than an observable):

// Move up to parent route and grab the id param
const id = +this.route.parent.params['id'];

Thanks for all the hard work on the router so far - really like the direction it's going. I just wanted to document a few ideas since the API is still being worked on and I think there are definitely some opportunities to simplify things along the way.

end of copy paste

What is the motivation / use case for changing the behavior?

It's impossible to find out how to get parent parameters right now. The parent property of routerState is not documented. Without this issue I would never have found out how to do that (Thank you @DanWahlin !!).

This is such an obvious necessity that it should be simplified or at least documented.

Thanks !

Angular version: 2.0.0-rc.3