Skip to content

Instantly share code, notes, and snippets.

@ramingar
Created November 6, 2015 09:05
Show Gist options
  • Select an option

  • Save ramingar/f61d26057fb1832f2314 to your computer and use it in GitHub Desktop.

Select an option

Save ramingar/f61d26057fb1832f2314 to your computer and use it in GitHub Desktop.
Actualizar menú cuando la url refresca #angular #actualizar #refrescar
/* listener for changes in uri */
appAngular.run(['$rootScope', 'ToggleMenuActive', function ($rootScope, ToggleMenuActive) {
$rootScope.$on('$routeChangeSuccess', function (event, current, previous) {
ToggleMenuActive.active = current.$$route.originalPath;
});
}]);
/* directive to change class */
angular.module('organizationDirectives', [])
.directive('markAsActive', ['ToggleMenuActive', function (ToggleMenuActive) {
var link = function (scope, element, attrs) {
scope.markAsActive = ToggleMenuActive;
};
return {
restrict: 'A',
link:link
};
}]);
/* markAsActive is the name of the $route */
<ul class="nav nav-sidebar" data-mark-as-active>
<li data-ng-class="{ 'active': markAsActive.active == '/profile' }"><a href="#/profile">Perfil</a></li>
<li data-ng-class="{ 'active': (markAsActive.active == '/members' || markAsActive.active == '/organization-members') }"><a href="#/members">Miembros</a></li>
<li data-ng-class="{ 'active': markAsActive.active == '/feeds' }"><a href="#/feeds">Publicaciones</a></li>
<li data-ng-class="{ 'active': markAsActive.active == '/pm' }"><a href="#/pm">Mensajes privados</a></li>
<li data-ng-class="{ 'active': markAsActive.active == '/suborganizations' }"><a href="#/suborganizations">Suborganizaciones</a></li>
<li data-ng-class="{ 'active': markAsActive.active == '/ads' }"><a href="#/ads">Publicidad</a></li>
<li data-ng-class="{ 'active': markAsActive.active == '/friendship' }"><a href="#/friendship">Amistad</a></li>
<li data-ng-class="{ 'active': markAsActive.active == '/account' }"><a href="#/account">Cuenta</a></li>
</ul>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment