diff --git a/src/about/about.component.js b/src/about/about.component.js
new file mode 100644
index 0000000..5474e81
--- /dev/null
+++ b/src/about/about.component.js
@@ -0,0 +1,12 @@
+class controller {
+ /*@ngInject*/
+ constructor() {
+ this.title = 'About Us';
+ }
+}
+
+export default {
+ template: require('./about.html'),
+ controllerAs: 'AboutCtrl',
+ controller
+}
diff --git a/src/about/about.html b/src/about/about.html
new file mode 100644
index 0000000..debc9fa
--- /dev/null
+++ b/src/about/about.html
@@ -0,0 +1,8 @@
+
+
{{ AboutCtrl.title }}
+
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Iusto quis asperiores sapiente quisquam pariatur, quam dignissimos neque nemo unde nesciunt illo. Rem maxime, inventore asperiores quia quos nulla. Rerum, cum.
+
Ad eaque, cumque fugiat dolore delectus deserunt officia praesentium sed totam ullam rem explicabo error culpa nihil. Sequi aliquid aperiam totam architecto quae est reiciendis sapiente suscipit consequatur, excepturi id.
+
A perspiciatis fugit quibusdam distinctio facere, harum quae quasi rem sed dolorum nostrum inventore, deserunt doloremque vel et libero unde. Excepturi praesentium debitis repellat nemo, dolore dolorem quisquam autem vero!
+
Dignissimos autem optio quod inventore. Consectetur cupiditate rem eveniet illum optio perferendis corporis iste, repudiandae architecto molestiae voluptatem quibusdam natus laborum mollitia aliquid. Rerum eius maiores vitae tempora voluptatibus reprehenderit.
+
Laudantium non libero ratione corrupti incidunt modi animi sapiente provident laborum debitis. Esse assumenda ut magnam nihil eaque excepturi, nesciunt numquam porro. Fugit illum aspernatur fuga ea ab doloremque atque!
+
diff --git a/src/about/index.js b/src/about/index.js
new file mode 100644
index 0000000..a7a8c65
--- /dev/null
+++ b/src/about/index.js
@@ -0,0 +1,21 @@
+import angular from 'angular';
+import 'angular-ui-router';
+
+import component from './about.component';
+
+import './style.scss';
+
+
+const module = angular.module('about.module', ['ui.router'])
+ .component('about', component)
+ .config(($stateProvider) => {
+ "ngInject"; // ng-annotate doesn't handle arrow functions automatically; need to add the directive prologue.
+ $stateProvider
+ .state('about', {
+ url: '/about',
+ template: ''
+ });
+ })
+ .name;
+
+export default module;
diff --git a/src/about/style.scss b/src/about/style.scss
new file mode 100644
index 0000000..469cc02
--- /dev/null
+++ b/src/about/style.scss
@@ -0,0 +1,3 @@
+.about {
+ margin: 20px;
+}
diff --git a/src/app.js b/src/app.js
index 215da1a..20b34b7 100644
--- a/src/app.js
+++ b/src/app.js
@@ -5,6 +5,7 @@ import 'angular-sanitize';
import Components from './components';
import Home from './home';
+import About from './about'
import appComponent from './application.component';
@@ -12,7 +13,7 @@ import './app.scss';
angular
- .module('synopsis', ['ui.router', 'ngSanitize', Components, Home])
+ .module('synopsis', ['ui.router', 'ngSanitize', Components, Home, About])
.config(($locationProvider) => {
"ngInject"; // ng-annotate doesn't handle arrow functions automatically; need to add the directive prologue.
$locationProvider.html5Mode(true);
@@ -27,4 +28,3 @@ angular
angular
.element(document)
.ready(() => angular.bootstrap(document, ['synopsis']));
-
diff --git a/src/components/navbar/navbar.html b/src/components/navbar/navbar.html
index 9bfee5b..38b998e 100644
--- a/src/components/navbar/navbar.html
+++ b/src/components/navbar/navbar.html
@@ -11,8 +11,8 @@
diff --git a/src/components/navbar/navbar.js b/src/components/navbar/navbar.js
index ac34611..fcdda5c 100644
--- a/src/components/navbar/navbar.js
+++ b/src/components/navbar/navbar.js
@@ -6,27 +6,17 @@ class NavBarController {
this.brand = 'Synopsis';
this.items = [{
- href: '#',
- label: 'Home',
- isActive: true
+ href: 'home',
+ label: 'Home'
}, {
- href: '#',
- label: 'About',
- isActive: false
+ href: 'about',
+ label: 'About'
}, {
href: '#',
- label: 'Contact',
- isActive: false
+ label: 'Contact'
}];
}
-
- onItemClicked(clickedItem) {
- this.items = this.items.map((item) => {
- item.isActive = item.label === clickedItem.label;
- return item;
- });
- }
}
const Navbar = {
diff --git a/src/components/navbar/navbar.spec.js b/src/components/navbar/navbar.spec.js
index 8f4141b..35f62e9 100644
--- a/src/components/navbar/navbar.spec.js
+++ b/src/components/navbar/navbar.spec.js
@@ -2,7 +2,7 @@ import '../index'; // import the module under test
describe('Navbar Component', () => {
- beforeEach(window.module('components.module'));
+ beforeEach(window.module('components.module'));
let $componentController;
beforeEach(window.inject((_$componentController_) => {
@@ -19,17 +19,4 @@ describe('Navbar Component', () => {
expect(component.items.length).toEqual(3);
});
-
- describe('#onItemClicked', () => {
- it('selects the clicked item', () => {
- let component = $componentController('navbar', null, {});
-
- var itemToClick = component.items[2];
- expect(itemToClick.isActive).toBe(false);
-
- component.onItemClicked(itemToClick);
- expect(itemToClick.isActive).toBe(true);
- });
- });
-
});