我收到关于 react-router 的 render Link 组件的错误

i got a error about render Link component of react-router

在我的简单应用中,我的一个组件需要 react-router 的 Link 组件,像这样:

<ul>
   <li><Link to="/">javascript</Link></li>
   <li><Link to="/">python</Link></li>
   <li><Link to="/">java</Link></li>
</ul>

当我以这种方式导入 Link 时:

import { BrowserRouter as  Link} from 'react-router-dom'

我收到一个错误:

React.Children.only expected to receive a single React element child

如果我像这样导入 Link :

import { BrowserRouter as Router, Route, Link} from 'react-router-dom'

或这个

import { Link} from 'react-router-dom'

那不会出错,任何人都可以告诉我以上三种导入 Link 组件的方式有什么不同。 我的 react-router-dom 版本是 4.3.1

导入Link组件的正确方法是:

import { Link } from "react-router-dom";

您的做法:import { BrowserRouter as Link} 不是正确的方法,因为您只是导入 BrowserRouter 组件并将其重命名为 "Link"。