2017-04-22 27 views
0

我已經與本地存儲參數掙扎我有這個//錯誤SyntaxError在JSON.parse()//我得到「undefined」而不是真正的值任何幫助請有關如何從localStorage的參數,我在我的兩個服務登錄後設置AUTH-service.tsauth.ts ?? !!如何操作離子2中的localStorage參數我得到未定義的值

AUTH-service.ts

 public loginChef(credentials) { 
     if (credentials.email === null || credentials.password === null) { 
     return Observable.throw("Please insert credentials"); 
     } else { 
      return Observable.create(observer => { 

      var url = 'http://localhost/PFEBACKEND/login-chef.php? 
     email='+credentials.email+'&passe='+credentials.password ;   
      this.http.get(url).map(res => res.json()).subscribe(
      data=>{                  
       let access = (data.error=== 0) 
       localStorage.setItem('nom',data.nom_contact); 
       localStorage.setItem('nom_societe',data.nom_societe); 
        localStorage.setItem('email',data.email); 
        localStorage.setItem('telephone',data.telephone);      
      localStorage.setItem('matricule_fiscale',data.matricule_fiscale); 
        localStorage.setItem('role',data.role); 
        localStorage.setItem('id',data.id_chef); 
        this.member=data; 
        this.email=data.email; 
        this.nom=data.nom;    
       // this.currentUser = new User(data.nom,data.email); 
        observer.next(this.email,this.nom); 
        //observer.next(this.member); 
        //observer.next(access); 
        // console.log(this.currentUser); 
        observer.complete(); 
        }, 
        err => { 
        console.log(err); 
        observer.next(err); 
        }, 
        () => console.log('service observable')); 

       }); 
    } 
} 

offre.ts

 offres: Array<any>; 
     loader: any; 
     id:string=''; 


constructor(public navCtrl: NavController, public navParams: NavParams, 
public data:Datamembers,private auth:AuthService, public 
loadingCtrl:LoadingController) 
{ 
     if(localStorage.getItem('id')){//after login i store the user data 

       this.id=localStorage.getItem('id');       
      } 

} 
    ngOnInit() 
    { var id1=parseInt(this.id).valueOf();// i get undefined value 
     this.presentLoading();  
     this.data.LoadOffres(id1).subscribe(
     //function LoadOffres accept int type parameter 
      data => { 
      this.offres = data; 
      console.log(data);    
      this.loader.dismiss(); 
     }, 
     err => { 
      console.log(err); 
      console.log(id1); 
      this.loader.dismiss(); 
     }, 
    () => console.log('chargement terminé') 
); 
} 

auth.ts

 public loginChef() { 
     this.showLoading(); 
     this.auth.loginChef(this.registerCredentials).subscribe(allowed => { 
     if (allowed) { 
      setTimeout(() => { 

      this.email=this.auth.email; 
      this.nom=this.auth.nom; 
      this.currentUSer = this.auth.currentUser; 
      this.member=this.auth.member;//array 

      localStorage.setItem('email',this.email); 
      localStorage.setItem('nom',this.nom); 
      (....) 
+0

'if(localStorage.getItem('id')){//登錄後我存儲用戶數據 this.id = localStorage.getItem('id'); }'你能夠在這裏記錄數據嗎? –

+0

當我試圖登錄ID我得到「undefined」 –

+0

你將不得不檢查它是否被設置在存儲中..'localStorage.setItem('id',data.id_chef);'在這裏登錄..如果它不是這裏然後服務器端... –

回答

0

一切是正確的概率lem在我的服務器端代碼