每次创建新的 React 应用程序时都会出现此错误:
警告:ReactDOM.render 在 React 18 中不再支持。请改用 createRoot。在您切换到新 API 之前,您的应用程序的行为就像运行 React 17 一样。了解更多信息:https ://reactjs.org/link/switch-to-createroot
我该如何修复它?
我使用以下方法创建了我的 React 应用程序:
npx create-react-app my-app
Run Code Online (Sandbox Code Playgroud) 我面临着
未捕获的类型错误:无法解构“React2.useContext(...)”的属性“basename”,因为它为空。
在Link代码的组件中:
import React, { useEffect, useState } from 'react';
import { Link } from 'react-router-dom';
import { styles } from '../styles';
import { navLinks } from '../constansts';
import { logo, menu, close } from '../assets';
const Navbar = () => {
const [active, setActive] = useState('');
return (
<nav className={`${styles.paddingX} w-full flex items-center py-5 fixed top-0 z-20 bg-primary`}>
<div className="w-full flex justify-between items-center max-w-7x1 max-auto">
<Link
to="/"
className="flex items-center gap-2"
onClick={() => {
setActive('');
window.scrollTo(0, 0); …Run Code Online (Sandbox Code Playgroud) **当我直接在我的路由器组件中写入我的导航栏组件内容时。它工作正常,但是当我在导航栏组件中写入该内容时,它会生成以下错误
错误:useHref() 只能在组件上下文中使用。 .**
我在用着
"react-dom": "^17.0.2", "react-router-dom": "^6.0.0-beta.6",
以下是我的组件..
我的导航栏组件:-
import { Link } from "react-router-dom";
// import styles from './NavBar.module.css';
export const NavBar = () => {
return (
<nav>
<Link to="/"> Home </Link>
<Link to="/about"> About </Link>
<Link to="/product"> Product </Link>
</nav>
);
}
Run Code Online (Sandbox Code Playgroud)
我的路线组件:-
import { BrowserRouter as Router, Switch, Route, Routes} from "react-router-dom";
// importing Component's
import { Home } from "./Components/Home/Home";
import { About } from "./Components/About/About";
import { Products } from "./Components/Products/Products";
import …Run Code Online (Sandbox Code Playgroud)