2017-06-12 10 views
0

TSファイルでローカルストレージvaribalesを設定したり取得したりするのに問題はありませんが、私のコードの各場所でローカルストレージを呼び出しているので、端末が "Invalid Character"エラー。tsファイルのローカルストレージエラー。無効な文字を言っている端末

import { Component } from '@angular/core'; 
import { LoadingController, ModalController, NavController, PopoverController } from 'ionic-angular'; 
import { getPostsService } from '../../services/getPosts.service'; 
import { changeDefaultCity } from '../../services/changeDefaultCity.service'; 



@Component({ 
    selector: 'page-home', 
    templateUrl: 'home.html', 
    providers: [getPostsService, changeDefaultCity] 
}) 

export class Home { 

    listOfEvents: Array<any> = []; 
    selectedCity: string; 
    defaultCity: string; 



    constructor ( public navCtrl: NavController, 
           public modalCtrl: ModalController, 
           public loading: LoadingController, 
           public popoverCtrl: PopoverController, 
           public getPostSrvc: getPostsService, 
           public chngDfCity: changeDefaultCity) { 

     this.listOfEvents = []; 
     let that = this; 

/*If there's no selected city and this is a first load then default city needs to be set */ 

         if(!this.defaultCity){ 

           this.showCitySelector(); 

           } else { 
//default city already set so grab it from local storage 


/*THIS IS WHERE THE TERMINAL HAS A PROBLEM*/ 

      this.defaultCity = localStorage.getItem(“DefaultCity”); 

          //call service, get posts for this city 
            this.getPostSrvc.getPosts(this.defaultCity, 
           function getPostsSuccess (listOfEventsObject) { 
            for (var i in listOfEventsObject) { 
             that.listOfEvents.push(listOfEventsObject[i]); 
            } 

           }, 
           function getPostsFailure (error) { 


      }); 

           }//close else statement 


} // end of constructor 

/* when new city selected from list call showCitySelector */ 

    showCitySelector() { 

       let that = this; 

     //ChangeCityFunction is the callback function for the popOver that shows the list of cities. 

       let changeCityFunction = function (changedNewCity) { 

              citySelectorPopOver.dismiss(); 

           //make sure no default city set 

              if(!that.defaultCity){ 

//TERMINAL GIVING SAME INVALID CHARACTER ERROR HERE 
         localStorage.setItem("DefaultCity", changedNewCity); 



              } 
              that.selectedCity = changedNewCity; 
              that.listOfEvents = []; 

           // call service again here. Same code from above    


       }; // end changeCityFunction 


     let citySelectorPopOver = 
        this.popoverCtrl.create(
         CitySelector, 
         { 
          callbackFunction: changeCityFunction 
         }); 
     citySelectorPopOver.present(); 

    } // end showCitySelector 
+1

"DefaultCity"は奇妙に見えますが、 ""ではなく ""にする必要があります。 – robbannn

+1

これは、この呼び出しで引用符が異なっていることを意味します。 'this.defaultCity = localStorage.getItem(" DefaultCity ");' – robbannn

+0

私は一重引用符を試してみました。 – Spilot

答えて

1
this.defaultCity = localStorage.getItem(“DefaultCity”); 

その行で引用符、“”は奇妙に見えますが、通常の引用符、""または''にそれらを変更してみてください。

関連する問題