feat(nav-view): basic structure and example

This commit is contained in:
Max Lynch
2015-03-29 10:34:01 -06:00
parent 0b527677bc
commit 33c061b572
4 changed files with 78 additions and 14 deletions

View File

@ -1,21 +1,67 @@
import {Component, Template, Inject, Parent, NgElement} from 'angular2/angular2'
import {ComponentConfig} from 'ionic2/config/component-config'
@Component({
selector: 'ion-nav',
bind: {
},
services: []
})
@Template({
inline: `<content></content>`
})
export class NavView {
constructor(@NgElement() element: NgElement) {
console.log('Nav View constructed')
// viewControllers: Stack<ViewController>;
// visibleViewController: ViewController;
this._views = []
}
// push(viewController) {
// stack.push(viewController)
// }
// pop(viewController) {
// stack.pop(viewController)
// }
// set viewControllers(v) {
// this.viewControllers = v
// }
/**
* Push a new view into the history stack.
*
* @param view the new view
* @param shouldAnimate whether to animate
*/
push(view, shouldAnimate) {
this.views.push(view)
constructor() {
console.log('construct nav-view')
this.history = [] // <---- would be fancy pants
if(shouldAnimate) {
this.animateIn(view)
}
}
/**
* Pop a view off the history
*
* @param shouldAnimate whether to animate
*/
pop(shouldAnimate) {
last = stack.pop()
if(shouldAnimate) {
this.animateOut(last)
}
return last
}
get views() {
return this._views
}
/**
* Set the view stack explicitly.
*/
set views(v) {
this._views = v
}
// Animate a new view *in*
_animateIn(view) {
}
// Animate an old view *out*
_animateOut(view) {
}
}

View File

View File

@ -0,0 +1,2 @@
<ion-nav>
</ion-nav>

View File

@ -0,0 +1,16 @@
import {bootstrap} from 'angular2/core';
import {Component, Template} from 'angular2/angular2';
import {NavView} from 'ionic2/components/nav-view/nav-view';
@Component({ selector: '[ion-app]' })
@Template({
directives: [NavView],
url: 'main.html'
})
class IonicApp {
constructor() {
console.log('IonicApp Start')
}
}
bootstrap(IonicApp)