当前的环境不支持指定的持久性类型
问题描述:
https://firebase.google.com/docs/auth/web/auth-state-persistence当前的环境不支持指定的持久性类型
The default for web browser and React Native apps is local (provided the browser supports this storage mechanism, eg. 3rd party cookies/data are enabled) whereas it is none for Node.js backend apps.
当我尝试在我的阵营原生Android应用程序如下:
const signIn =() =>
firebase.auth().setPersistence(firebase.auth.Auth.Persistence.LOCAL).then(() => {
return firebase.auth().signInAnonymously();
});
我收到以下错误:
The current environment does not support the specified persistence type.
这是一个错误还是我错过了文档中的某些东西?
环境:
"dependencies": {
"firebase": "^4.5.0",
"react": "16.0.0-alpha.12",
"react-native": "^0.48.4",
}
Android 7.0
答
似乎有选择性地引进火力模块的错误。
改变从
import * as firebase from 'firebase/app';
import 'firebase/auth';
的进口
import firebase from 'firebase';
解决的问题。
嘿Prashanth,这是在4.2.0发布:https://firebase.google.com/support/release-notes/js#4.2.0你可以尝试降级到该版本,看看这是一个回归? – bojeil
降级到4.2.0并未解决问题。添加'firebase.default.INTERNAL.extendNamespace({ INTERNAL:{ reactNative:{ AsyncStorage:AsyncStorage }} });'前右侧设置持久性使错误消失,虽然AUTH仍不之间仍然存在应用程序重新启动(每次不同的user.uid)。 –
我找到了根本原因。我使用的是选择性导入,即'import * from'firebase/app' import'firebase/auth''。切换到从'firebase''导入Firebase解决了这个问题。 –