/**
* @ngdoc directive
* @name ionView
* @module ionic
* @restrict E
* @parent ionNavView
*
* @description
* A container for view content and any navigational and header bar information. When a view
* enters and exists its parent {@link ionic.directive:ionNavView}, the view also emits view
* information, such as its title, whether the back button should show or not, whether the
* corresponding {@link ionic.directive:ionNavBar} should show or not, which transition the view
* should use to animate, and which direction to animate.
*
* *Views are cached to improve performance.* When a view is navigated away from, its element is
* left in the DOM, and its scope is disconnected from the `$watch` cycle. When navigating to a
* view that is already cached, its scope is reconnected, and the existing element, which was
* left in the DOM, becomes active again. This can be disabled, or the maximum number of cached
* views changed in {@link ionic.provider:$ionicConfigProvider}, in the view's `$state` configuration, or
* as an attribute on the view itself (see below).
*
* @usage
* Below is an example where our page will load with a {@link ionic.directive:ionNavBar} containing
* "My Page" as the title.
*
* ```html
*
$ionicView.loaded |
* The view has loaded. This event only happens once per * view being created and added to the DOM. If a view leaves but is cached, * then this event will not fire again on a subsequent viewing. The loaded event * is good place to put your setup code for the view; however, it is not the * recommended event to listen to when a view becomes active. | *
$ionicView.enter |
* The view has fully entered and is now the active view. * This event will fire, whether it was the first load or a cached view. | *
$ionicView.leave |
* The view has finished leaving and is no longer the * active view. This event will fire, whether it is cached or destroyed. | *
$ionicView.beforeEnter |
* The view is about to enter and become the active view. | *
$ionicView.beforeLeave |
* The view is about to leave and no longer be the active view. | *
$ionicView.afterEnter |
* The view has fully entered and is now the active view. | *
$ionicView.afterLeave |
* The view has finished leaving and is no longer the active view. | *
$ionicView.unloaded |
* The view's controller has been destroyed and its element has been * removed from the DOM. | *