PrinceZee
PrinceZee

Reputation: 1598

dependency injection not working anymore ionic2

dependency injection dont work anymore in ionic 2

import {Page, Platform, NavController} from 'ionic-framework/ionic';
import {Signup} from '../signup/signup';
import {Pass} from '../pass/pass'


@Page({
  templateUrl: 'build/pages/login/login.html'
})
export class Login {
constructor(platform: Platform, nav: NavController){

}

goTosignup(){
  this.nav.push(Signup)
}


}

this is what i'm doing who where working perfectly before today, today i get this error in the console

ERROR in ./app/pages/login/login.js Module build failed: SyntaxError: /Users/ondondacarrel/Desktop/code/code2/jobandgo/app/pages/login/login.js: Unexpected token (10:20) 8 | }) 9 | export class Login {

10 | constructor(platform: Platform, nav: NavController){ | ^ 11 | 12 | } 13 |

constructor(@Inject(NavController) nav: NavController) doesn't work too , if someone can help me figure out this please

Upvotes: 1

Views: 767

Answers (2)

PrinceZee
PrinceZee

Reputation: 1598

it was an issue related to typescript parameter decoration and javascript parameter decoration

import {Page, NavController} from 'ionic-framework/ionic';
import {Signup} from '../signup/signup';
import {Pass} from '../pass/pass'

@Page({
  templateUrl: 'build/pages/login/login.html'
})

export class Login {
  static get parameters() {
   return [[NavController]];
 }
constructor(nav){
this.nav = nav
}

gotoPage(){
  this.nav.push(Signup)
}





}

Upvotes: 1

Raja Yogan
Raja Yogan

Reputation: 918

Could you please try with @Inject() as shown below:

import {Page, Platform, NavController} from 'ionic-framework/ionic';
import {Inject} from 'angular2/core';
import {Signup} from '../signup/signup';
import {Pass} from '../pass/pass'


@Page({
  templateUrl: 'build/pages/login/login.html'
})
export class Login {
constructor(@Inject(Platform) platform: Platform, @Inject(NavController) nav: NavController){

}

goTosignup(){
  this.nav.push(Signup)
}


}

Upvotes: 1

Related Questions