小编Jan*_*nus的帖子

react-router-dom:无效的钩子调用,钩子只能在函数组件体内调用

我尝试嵌套一条路线:我在Catalog组件中有一个产品目录,它与 url "backoffice/catalog"匹配。

如果 url 与"backoffice/catalog/edit"匹配,我想路由到Edition组件,但我需要将Edition组件作为Catalog的子级来共享道具。

我真的不明白为什么嵌套路由不起作用,请救救我!如果我的应用程序有任何问题,请毫不犹豫地告诉我,我很了解 JavaScript,但我是从 React 开始的。

这是我的应用程序组件:

import React from "react";
import { Route, Switch } from "react-router-dom";
import { Home } from "./components/Static/Home.js";
import { Dashboard } from "./components/Backoffice/Dashboard.js";
import { Catalog } from "./components/Backoffice/catalog/Catalog.js";
import { Login } from "./components/Login/Login.js";
import { Signup } from "./components/Signup/Signup.js";
import { PrivateRoute } from "./components/PrivateRoute.js";
import "./scss/App.scss";
import {Header} from "./components/Structure/Header";
import {BOHeader} from …
Run Code Online (Sandbox Code Playgroud)

javascript routes reactjs react-router react-router-dom

13
推荐指数
2
解决办法
2万
查看次数

尝试导入错误:“useRouteMatch”未从“react-router-dom”导出

当我尝试从 react-router-dom 模块导入 useRouteMatch 时出现此错误,出现此错误:

尝试导入错误:“useRouteMatch”未从“react-router-dom”导出。

我有错误版本的 react-router-dom 模块吗?

import {
    BrowserRouter as Router,
    Switch,
    Route,
    Link,
    useRouteMatch,
    useParams
} from "react-router-dom";
Run Code Online (Sandbox Code Playgroud)

我查看了模块的导出,实际上并没有导出。我有错误的版本吗?

import _BrowserRouter from "./BrowserRouter";
export { _BrowserRouter as BrowserRouter };
import _HashRouter from "./HashRouter";
export { _HashRouter as HashRouter };
import _Link from "./Link";
export { _Link as Link };
import _MemoryRouter from "./MemoryRouter";
export { _MemoryRouter as MemoryRouter };
import _NavLink from "./NavLink";
export { _NavLink as NavLink };
import _Prompt from "./Prompt";
export { _Prompt …
Run Code Online (Sandbox Code Playgroud)

reactjs react-router react-router-dom

10
推荐指数
5
解决办法
2万
查看次数