我正在尝试实现登录。
它有 2 个选项,一个可以注册您在 FB 中的数据,另一个可以手动输入。
在第一个表格中,您与 fb 连接,他会提供您的姓名和邮件,然后将您发送到下一个窗口,您必须在其中输入您的电话号码
在 resgitro 的第二个选项中,您可以在它显示“立即注册”的地方进行操作,它会将您带到同一页面,而这次只是从上方带您进入空白字段。
当我给出第二个选项时出现错误,出现以下错误并且不显示屏幕:
它告诉我它是空的 然后我的疑问是以下内容,因为当它到达空的时候它显示正常屏幕
This is the code of my login with facebook:
loginWithFB() {
let nav = this.navCtrl;
let env = this;
this.facebook.login(['email', 'public_profile']).then((response: FacebookLoginResponse) => {
this.facebook.api('me?fields=id,name,email,first_name,picture.width(720).height(720).as(picture_large)', [])
.then(function (user) {
env.nativeStorage.setItem('user',
{
name: user.name,
email: user.email
})
.then(function () {
nav.push(RegistroNPage);
//console.log(user);
}, function (error) {
console.log(error);
})
})
});
}
Maybe it's a mistake to be in this class:
ionViewCanEnter() {
console.log('Ya llegue');
let env = this;
return this.nativeStorage.getItem('user')
.then(function (data) {
env.user = {
name: data.name,
email: data.email
};
console.log(env.user);
env.userReady = true;
return true;
}, function (error) {
console.log(error);
return false;
});
}
这是我的注册页面的 html,其中有 2 个按钮:
<ion-content padding class="body" align="center">
<img src="assets/logito.png">
<br>
<br>
<ion-list *ngIf="userReady">
<ion-item>
<ion-label>
<ion-icon name="person"></ion-icon>
</ion-label>
<ion-input type="text" placeholder="Nombres" [(ngModel)]="user.name">
</ion-input>
</ion-item>
<ion-item>
<ion-label>
<ion-icon name="mail"></ion-icon>
</ion-label>
<ion-input type="text" placeholder="Nombres" [(ngModel)]="user.email">
</ion-input>
</ion-item>
<ion-item>
<ion-label>
<ion-icon name="call"></ion-icon>
</ion-label>
<ion-input clearInput type="number" placeholder="Teléfono">
</ion-input>
</ion-item>
</ion-list>
<button ion-button item-end round full icon-start color="dark" class="botones">
<ion-icon name='checkmark-circle-outline'></ion-icon>
registar
</button>
</ion-content>
最佳答案
您需要使用 fat arrow functions如下所示。
ionViewCanEnter() {
let env = this;
return this.nativeStorage.getItem('user')
.then((data) => {
env.user = {
name: data.name,
email: data.email
};
console.log(env.user);
env.userReady = true;
return true;
}, (error)=> {
console.log(error);
return false;
});
}
关于angular - Native Storage Error,不显示如下画面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45845757/