小编Kev*_*ump的帖子

React js:错误:useLocation() 只能在 <Router> 组件的上下文中使用

我使用React Router v6,每次我在主文件中使用初始化进行身份验证时,都会显示此错误。我在互联网上找不到解决方案。我只想在有用户时渲染一些路线,但现在它不渲染任何内容。

认证导航器

import React, { useState, useEffect } from 'react';
import app from './firebase';
import { Router, Routes, Route } from 'react-router-dom';

import AuthStack from './stacks/AuthStack';
import AppStack from './stacks/AppStack';
import StaticStack from './stacks/StaticStack';

function AuthNavigator() {
  const [initializing, setInitializing] = useState(true);
  const [user, setUser] = useState(() => app.auth().currentUser);

  useEffect(() => {
    const unsubscribe = app.auth().onAuthStateChanged((user) => {
      if (user) {
        setUser(user);
      } else {
        setUser(null);
      }
      if (initializing) {
        setInitializing(false);
      }
    });

    // cleanup subscription
    return unsubscribe; …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-router-dom

46
推荐指数
5
解决办法
11万
查看次数

标签 统计

javascript ×1

react-router-dom ×1

reactjs ×1