我收到关于 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"。
在我的简单应用中,我的一个组件需要 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"。