Components in template getting destroyed and recreated each time?

I’ve got a route whose template contains two components. I use the route to show the details from a selection elsewhere in the application. When I transition to the route to show the details of the latest selected data item, I see that the components are getting destroyed and re-created each time. The route’s init() method is only called the first time, as I would expect. But each time, I re-transition to the route to show different data, the components are getting destroyed and recreated. Is this normal? It seems inefficient to me. I was think I would just update their data models based on the route’s new data. What am I missing?