2017-04-11 7 views
0

I Ionic2ネイティブAppPreferencesから都市を取得するために、次のコードを有する:内部Ionic2 AppPreferencesは不定

import { AppPreferences } from '@ionic-native/app-preferences'; 

constructor(public appPreferences: AppPreferences) { 

    console.log("The city is : " + this.loadPreferences("selectedCity")); 

} 

loadPreferences(preferenceKey: any){ 
    this.appPreferences.fetch(preferenceKey).then((res) => { return res; }); 
} 

を.then((RES)=> {にconsole.log})。値が印刷され、正常に動作します。しかし、私が値を返すか、それをいくつかの変数に代入すると、値は "The city is:undefined"になります。私は間違って何かしていますか?

ありがとうございました。

+0

fetchメソッドは非同期で、コンストラクタの実行後にのみ実行されます。何が失敗するのかのコード例を教えてもらえますか?これは実行しようとしているコードですか? – misha130

+0

はいこれは私が実行しようとしている実際のコードです –

+0

コードの各行とその実行時を考えてください – misha130

答えて

1

私はそれを得ました。 @ misha130は、それぞれの行について考えるように。非同期メソッドの結果を得る前に、次の行が出力されます。

console.log("The city is : " + this.loadPreferences("selectedCity")); 

私のコードを少し変更しました。今度は、非同期関数で結果を取得したときにコードを実行します。ありがとうございます