Skip to content

Instantly share code, notes, and snippets.

@Colex
Created January 5, 2016 15:09
Show Gist options
  • Save Colex/658e534159027ecfc60b to your computer and use it in GitHub Desktop.
Save Colex/658e534159027ecfc60b to your computer and use it in GitHub Desktop.
Route Active
import {Component, ViewEncapsulation} from 'angular2/core';
import {
RouteConfig,
ROUTER_DIRECTIVES
} from 'angular2/router';
import {StaticPages} from '../staticpages/staticpages';
import {DashboardPage} from '../dashboardpage/dashboardpage';
@Component({
selector: 'app',
viewProviders: [NameList],
templateUrl: './components/app/app.html',
styleUrls: ['./components/app/app.css'],
encapsulation: ViewEncapsulation.None,
directives: [ROUTER_DIRECTIVES]
})
@RouteConfig([
{ path: '/...', component: StaticPages, as: 'StaticPages' },
{ path: '/dashboard/...', component: DashboardPage, as: 'Dashboard' }
])
export class AppCmp {}
import {Component} from 'angular2/core';
import {RouteConfig, ROUTER_DIRECTIVES} from 'angular2/router';
import {SideMenu} from '../sidemenu/sidemenu';
import {OverviewPage} from '../overviewpage/overviewpage';
import {Users} from '../../services/users';
@Component({
selector: 'dashboardpage',
templateUrl: './components/dashboardpage/dashboardpage.html',
directives: [ROUTER_DIRECTIVES, DashboardTopMenu, SideMenu],
providers: [Users]
})
@RouteConfig([
{ path: '/:username', component: OverviewPage, as: 'Overview' }
])
export class DashboardPage {};
<!-- Sidebar Menu Items - These collapse to the responsive navigation menu on small screens -->
<div class="collapse navbar-collapse navbar-ex1-collapse">
<ul class="nav navbar-nav side-nav">
<li [class.active]="router.isRouteActive(router.generate(['/Dashboard/Overview', { username: users.name }]))">
<a [routerLink]="['./Overview', { username: users.name }]"><i class="fa fa-fw fa-dashboard"></i> Dashboard</a>
</li>
<li [class.active]="router.isRouteActive(router.generate(['./Overview', { username: users.name }]))">
<a [routerLink]="['./Overview', { username: users.name }]"><i class="fa fa-fw fa-credit-card"></i> Accounts</a>
</li>
</ul>
</div>
import {Component} from 'angular2/core';
import {ROUTER_DIRECTIVES, Router} from 'angular2/router';
import {Users} from '../../services/users';
@Component({
selector: 'sidemenu',
templateUrl: './components/sidemenu/sidemenu.html',
directives: [ROUTER_DIRECTIVES]
})
export class SideMenu {
constructor(public router: Router, public users: Users) {
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment