2017-05-19 87 views
0

我是Ionic的新手,想知道是否有一种方法来动态设置全局变量,然后将其用于应用程序的其余部分。Ionic 2 typescript/angular2设置全局变量

我有一个应用程序,在主页上我问用户的电话号码,然后验证他们的身份。一旦验证,我需要存储/记住/检索应用程序的其余部分。

有没有一种方法可以做到这一点,而不是作为参数传递它呢?

回答

1

您可以使用localStorage储存的电话号码:

$window.localStorage.setItem("phoneNumber",phoneNumber); 
$window.localStorage.getItem("phoneNumber"); 
1

你应该在服务中管理你的状态(离子称之为提供商,生成一个以“离子产生提供商)。

官方教程“Tour of Heroes”涵盖了这个。你可以在这里找到相应的章节https://angular.io/docs/ts/latest/tutorial/toh-pt4.html

基本上你创建一个服务:

@Injectable() 
export class MyService{ 
    public phoneNumber; 
} 

,并从所有使用它的成分是这样的:

export class MyComponent{ 
    constructor(private myService: MyService){} 

    setPhone(number: number){ 
    if(validateNumber(number)){ 
     this.myService.phoneNumber = number; 
    } 
    } 
}