reactjs - 如何在 React Router 中使用 Match 对象修复导入错误
问题描述
我是 React 和 Redux 的初学者...我需要在我的应用程序中使用 Match 对象...但是我收到以下错误...
尝试导入错误:“匹配”未从“反应路由器”导出。
尝试使用“react-router-dom”时也会出现相同的错误。
import React from 'react';
import logo from './logo.svg';
import './App.css';
import {Link} from 'react-router-dom'
import {Match} from 'react-router';
import GamesPage from './GamesPage'
//import './reducers/games'
function App() {
return (
<div className="App">
<div className="App-header">
<img src={logo} className="App-logo" alt="logo" />
</div>
<p>
<Link to="games">Games</Link>
</p>
<Match pattern="/games" component={GamesPage} />
</div>
);
}
export default App;
解决方案
Match是 React Router v4 的 alpha 版本中的组件。
在 beta 版中,Match已重命名为Route(并且它的 props 已更改,因此模式现在是路径并且完全准确)。相反,您应该使用Switch语句,它只会呈现匹配的第一个Route(或Redirect)。您可以添加一个无路径组件作为Switch路由的最后一个子组件,并且它将在前面的路由不匹配时呈现。
您可以查看 API 文档以获取更多详细信息。
推荐阅读
- php - 使用友好的 url 更改 .htacces 时无法获取变量
- azure - 如何从 Microsoft Graph 获取 Azure 用户列表?
- mysql - 如何使用 Sequelize 从不同的表中插入/查找由外键相关的行?
- firebase - Exists() 不适用于第二个变量 Cloud Firestore 规则
- curl - 将 curl 转换为 pycurl
- c++ - 模板函数在模板化对象上执行成员回调而不提供它的实例
- yii2 - 如何获得更广泛的工具提示输出
- python - 游戏图像识别(在 Flappy Bird 中识别得分或游戏结束)
- asp.net-mvc - Webpack 4.6 不使用引导程序 4.1 呈现
- javascript - Angular - 在json中的对象内显示对象