ionic infocli包:(/usr/local/lib/node)
@ionic/cli-utils : 1.19.2
ionic (Ionic CLI) : 3.20.0全球一揽子计划:
cordova (Cordova CLI) : 8.0.0 本地套餐:
@ionic/app-scripts : 3.1.8
Cordova Platforms : android 6.3.0
Ionic Framework : ionic-angular 3.9.2系统:
Node : v8.11.0
npm : 5.6.0
OS : macOS High Sierra环境变量:
ANDROID_HOME : not set其他:
backend : proMyProvider
import { Injectable } from '@angular/core';
import { Storage } from '@ionic/storage';
@Injectable()
export class GlobalTokenProvider {
constructor(public storage: Storage) {
console.log('Hello GlobalTokenProvider Provider');
}
getToken() {
let token;
this.storage.get('token').then(data => token = data);
return token
}
}app.module.ts
import { GlobalTokenProvider } from '../providers/global-token/global-token';
providers: [
...
GlobalTokenProvider,
...
]usepage.ts
import { GlobalTokenProvider } from '../../providers/global-token/global-token';
constructor(public navCtrl: NavController, public navParams: NavParams,public http:HttpClient,public storage:Storage,public globaltoken:GlobalTokenProvider) {
alert(this.globaltoken.getToken())
}此存储具有令牌,但提供程序返回未定义的如何在提供程序中使用存储。
发布于 2018-04-03 07:54:40
在您的提供者中,只要将存储作为承诺返回即可。
getToken(){
return this.storage.get('token')
}在您的usepage.ts检索中像这样
this.globaltoken.getToken().then((token)=>{
console.log(token)
})https://stackoverflow.com/questions/49624499
复制相似问题