diff --git a/ionic/components/input/input-base.ts b/ionic/components/input/input-base.ts index 1884b1d286..22573d6a2e 100644 --- a/ionic/components/input/input-base.ts +++ b/ionic/components/input/input-base.ts @@ -9,7 +9,7 @@ import {IonicApp} from '../app/app'; import {Label} from '../label/label'; import {pointerCoord, hasPointerMoved, closest} from '../../util/dom'; import {NavController} from '../nav/nav-controller'; -import {NativeInput} from './native-input'; +import {NativeInput, NextInput} from './native-input'; import {Platform} from '../../platform/platform'; @@ -167,9 +167,11 @@ export class InputBase { */ @ViewChild(NextInput) private set _nextInput(nextInput: NextInput) { - nextInput.focused.subscribe(() => { - this._form.tabFocus(this); - }); + if (nextInput) { + nextInput.focused.subscribe(() => { + this._form.tabFocus(this); + }); + } } /** @@ -333,7 +335,6 @@ export class InputBase { */ clearTextInput() { console.log("Should clear input"); - //console.log(this.textInput.value); } /** @@ -518,21 +519,3 @@ function getScrollAssistDuration(distanceToScroll) { let duration = distanceToScroll / SCROLL_ASSIST_SPEED; return Math.min(400, Math.max(150, duration)); } - - - -/** - * @private - */ -@Directive({ - selector: '[next-input]' -}) -export class NextInput { - @Output() focused: EventEmitter = new EventEmitter(); - - @HostListener('focus') - receivedFocus() { - this.focused.emit(true); - } - -} \ No newline at end of file diff --git a/ionic/components/input/input.ts b/ionic/components/input/input.ts index ce7dd69b75..c58026895f 100644 --- a/ionic/components/input/input.ts +++ b/ionic/components/input/input.ts @@ -5,11 +5,11 @@ import {Button} from '../button/button'; import {Config} from '../../config/config'; import {Content} from '../content/content'; import {Form} from '../../util/form'; -import {InputBase, NextInput} from './input-base'; +import {InputBase} from './input-base'; import {IonicApp} from '../app/app'; import {Item} from '../item/item'; import {Label} from '../label/label'; -import {NativeInput} from './native-input'; +import {NativeInput, NextInput} from './native-input'; import {NavController} from '../nav/nav-controller'; import {Platform} from '../../platform/platform'; diff --git a/ionic/components/input/native-input.ts b/ionic/components/input/native-input.ts index c1a963e873..b533576e11 100644 --- a/ionic/components/input/native-input.ts +++ b/ionic/components/input/native-input.ts @@ -142,3 +142,21 @@ function removeClone(focusedInputEle, queryCssClass) { clonedInputEle.parentNode.removeChild(clonedInputEle); } } + + + +/** + * @private + */ +@Directive({ + selector: '[next-input]' +}) +export class NextInput { + @Output() focused: EventEmitter = new EventEmitter(); + + @HostListener('focus') + receivedFocus() { + this.focused.emit(true); + } + +} \ No newline at end of file