There is an open issue on this exact scenario in
https://github.com/angular/angular/issues/5275
You can use routerCanReuse only if the new component and the old component(when you hit the 'back' button) are of the same Component type.
As Günter suggested your only option right now if the Components are of different type is to keep state in a shared service.