在我的 Ionic 5 电容器应用程序中,我有一个调用此函数的按钮
import {
signInWithEmailAndPassword, signOut,
User, UserCredential,
} from '@angular/fire/auth';
//...等等等等等等
async signIn(value)
{
try {alert('signing in')
return (await signInWithEmailAndPassword(this.auth, value.email, value.password)).user
} catch (error) {
alert('what the heck?' + error)
}
}
这在 Web 和 Android 上运行良好(它返回对象并继续)。在iOS模拟器和设备上,它可以与livereload配合使用,但如果没有livereload,它什么也不做,甚至不返回任何内容。会弹出“登录”,但不会从那里继续。
知道为什么会这样吗?
In your 应用程序模块.ts文件中,将以下内容添加到您的imports array.
provideAuth(() => {
if (Capacitor.isNativePlatform()) {
return initializeAuth(getApp(), {
persistence: indexedDBLocalPersistence,
});
} else {
return getAuth();
}
}),
并从中导入必要的函数和值@angular/fire/auth
.
这是与 Puneet Kushway 类似的解决方案。我发现这个解决方案更好,因为它可以让您应用程序组件.ts文件整洁。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)