Ionic 2 app:记住设备上的用户

时间:2016-05-19 08:58:25

标签: authentication ionic2 remember-me

我有一个离子应用程序,我想在登录页面中添加一个“记住我”复选框,这样一旦用户登录,他将永远登录(除非他注销),即使他关闭并重新打开应用程序,就像Facebook应用程序一样。 有没有办法在Ionic 2中做到这一点?

谢谢!

3 个答案:

答案 0 :(得分:6)

您可以使用localstorage来保存一些数据以供您自己的验证/逻辑处理。它支持html5并且易于使用。缺点是它不会安全,当内存不足或清除缓存时系统可能会删除它。

HTML(按下按钮,但您可以根据自己的喜好进行设置):

<button secondary (click)="addLocalStorage()">Done</button>

在您的控制器中:

import {Storage, LocalStorage} from 'ionic-angular';
constructor(navController, local) {
    this.navController = navController;
    this.local = new Storage(LocalStorage);
}
addLocalStorage(){
    this.local.set("didTutorial","true");
    //set the doneTutorial to be true
}

说明: 在构造函数中,我们创建一个名为&#39; local&#39;的新localstorage对象。 要打电话,我们使用&#39; this.local&#39;和&#39;设置&#39;是存储它的方法。

  

设置(键,值)

在上面的示例代码中,我使用了'didTutorial&#39;作为关键和真实的&#39;作为价值。

要检索它,您可以在此页面或任何其他页面检索它。 只需记住导入Storage和LocalStorage并在构造函数中声明一个新的localstorage对象。(与上面相同)

要检索的代码是:

var value = localStorage.getItem('didTutorial');
  

的GetItem(键,值)

答案 1 :(得分:0)

您可以使用storage和sqlStorage来保存用户数据。然后检查它是否已保存用户。

参考: - https://www.thepolyglotdeveloper.com/2015/12/use-sqlite-in-ionic-2-instead-of-local-storage/

希望这有帮助!

答案 2 :(得分:0)

localStorage工作正常,但我确认了@Gene谈论的缺点。它不可靠,特别是在没有太多免费存储的iPhone上

我使用离子1,所以我无法尝试这个解决方案,但您可能想要检查一下:https://ionicframework.com/docs/native/native-storage/ ;可能更可靠!