Implementando un botón de retroceso "condicional" en ember.js
Estoy trabajando en una aplicación móvil basada en ember.js (versión 1.2) y estoy tratando de encontrar la forma más idiomática de implementar el patrón global del botón de alternar / retroceder que es común en muchas aplicaciones móviles. Específicamente, es un botón que se encuentra en el lado izquierdo de una barra de herramientas superior fija, que alterna el menú principal de un cajón oculto cuando el usuario se encuentra en la vista de inicio / índice de la aplicación; sin embargo, al pasar a una ruta secundaria, el botón muestra un reverso flecha, y cuando se hace clic, lleva al usuario a la ruta vista anteriormente (o a la ruta de índice si no hay estados históricos anteriores, es decir, si el usuario entró en una ruta secundaria directamente al cargar la aplicación).
Para mi información, actualmente tengo mi aplicación estructurada con la barra de herramientas superior fija y el botón de alternancia / retroceso del menú en la plantilla de la aplicación raíz. Idealmente, esta funcionalidad funcionaría sin importar cómo se estén haciendo la transición a las rutas, ya sea a través detransitionTo()
o{{#link-to}}
ayudantes, ect.
Básicamente, quiero saber si Ember mantiene internamente algún tipo de historial / registro accesible de las rutas a las que se realizó la transición a lo largo de la vida de la aplicación, y también cuál sería la mejor manera de cambiar condicionalmente la acción que el botón de alternar / retroceder realiza y su visualización (también conocido como su icono) dependiendo de la ruta actual. ¿Y / o hay una manera de escuchar los eventos de cambio de ruta de ember para que yo pueda implementar esa historia si es necesario?