我正在使用 Jest 和 Enzyme 测试我的 React 应用程序。我也使用 Firebase,当我尝试为使用 Header 组件和 Firebase 登录的页面编写测试时,出现以下错误:
测试套件运行失败
INTERNAL ASSERTION FAILED: Expected a class definition
42 | firebase.initializeApp(config);
43 |
> 44 | export const auth = firebase.auth();
| ^
45 | export const firestore = firebase.firestore();
46 |
47 | const provider = new firebase.auth.GoogleAuthProvider();
at debugFail (node_modules/@firebase/auth/src/core/util/assert.ts:256:9)
at debugAssert (node_modules/@firebase/auth/src/core/util/assert.ts:271:5)
at Object._getInstance (node_modules/@firebase/auth/src/core/util/instantiator.ts:34:3)
at new CompatPopupRedirectResolver (node_modules/@firebase/auth-compat/src/popup_redirect.ts:29:9)
at _getInstance (node_modules/@firebase/auth/src/core/util/instantiator.ts:45:14)
at AuthImpl.Object.<anonymous>.AuthImpl._initializeWithPersistence (node_modules/@firebase/auth/src/core/auth/auth_impl.ts:121:37)
at _initializeAuthInstance (node_modules/@firebase/auth/src/core/auth/initialize.ts:86:8)
at node_modules/@firebase/auth/src/core/auth/register.ts:87:11
at Component.instanceFactory (node_modules/@firebase/auth/src/core/auth/register.ts:90:10)
at Provider.Object.<anonymous>.Provider.getOrInitializeService …Run Code Online (Sandbox Code Playgroud) 从 React Router Dom 更新到版本 6 后,我需要帮助。我有一个用户登录后重定向的代码片段,它应该在版本 5 中工作,但我认为“重定向”已被弃用。现在,我正在寻找一些可以集成到我以前的代码中的替代品。
这是我的代码示例,它应该在 React Router Dom 版本 5 中工作:
<Route path='/signin' render={() => this.props.currentUser ? (<Redirect to =''/>) : (<SignIn/>)}></Route>
我认为我应该使用类似“Navigate”的内容,但我不确定如何使用条件语句来实现它,因为对于版本 6,我还必须添加“element={}”部分。
如果您需要更多信息,请告诉我。
谢谢!