【发布时间】:2018-10-08 23:11:35
【问题描述】:
我正在开发一个离子应用程序,我需要创建一个会话,所以当用户登录时,我存储了他的名字,然后我可以检查用户是否真的登录。为此,我创建了一个模型类和一个用户类。我的问题是,当我尝试控制台记录存储在 ionic 中的值时,它会返回空值,这是一张准确解释输出的图像:
我不明白为什么它会像'0: 'n', 1: 'o', 2: 'm', 3: 'e' 这样记录。
我想要做的是将用户名存储在我的会话中并同时登录。
我是这样做的:
import { Storage } from "@ionic/storage";
import { Injectable } from '@angular/core';
import { Usuario } from "./interface/usuario";
@Injectable()
export class Session {
constructor(public storage: Storage){}
create(usuario: Usuario) {
this.storage.set('usuario', usuario);
}
get(): Promise<any> {
return this.storage.get('usuario');
}
remove() {
this.storage.remove('usuario');
}
exist() {
this.get().then(res => {
console.log('resultado >>> ', res);
if(res) {
console.log('resultado IF');
return true;
} else {
console.log('resultado else');
return false;
}
});
}
}
我的用户/Usuario 类:
import { Model } from './../models/model';
export class Usuario extends Model{
nome: string;
email: string;
login: string;
senha: string;
}
模型类
import { Usuario } from './../interface/usuario';
export class Model{
constructor(Usuario){
Object.assign(this, Usuario);
}
}
我在哪里检索存储在我的 Usuario 对象中的内容并在之后立即记录它
ionViewDidLoad() {
this.carregarPerfil();
this.session.get()
.then(res => {
this.usuarioLogado = new Usuario(res);
console.log('usuário logado >>> ', this.usuarioLogado);
});
console.log(this.session.exist());
this.session.remove();
this.session.get()
.then(res => {
this.usuarioLogado = new Usuario(res);
console.log('USUARIO LOGADO >>> ', this.usuarioLogado);
});
console.log(this.session.exist());
}
编辑:这是我在使用 storage.get 创建 console.log 时发生的情况
https://imgur.com/a/W2rQhd8
create(usuario: Usuario) {
this.storage.set('usuario', usuario);
console.log('[TEST] VALUE BEING PASSED IS ', this.storage.get('usuario'));
}
【问题讨论】:
-
调试运行时
create传入的对象!或发布Model类以及您如何设置对象! -
请创建Minimalist StackBlitz 复制此问题。
-
@Ravikumar 这是我的模型类: import { Usuario } from './../interface/usuario';导出类模型{构造函数(Usuario){ Object.assign(this,Usuario); } }
-
@SiddAjmera 请发布您如何设置对象!
-
抱歉耽搁了@SiddAjmera,这是代码stackblitz.com/edit/ionic-6jcigi?file=pages%2Flogin%2Flogin.ts
标签: angular typescript session ionic-framework