javascript - 如何重定向到 React.js 中的页面
问题描述
我正在尝试使用 JSX<Link />
标签重定向页面。这是我的代码:
链接.js:
<Link to="/kategoriler" className="nav-link">
categories
</Link>
应用程序.js:
import React, {Component} from 'react';
import { BrowserRouter as Router, Route } from 'react-router-dom';
import { Link } from 'react-router'
import links from 'links';
import CategoriesPage from './components/pages/categoriesPage';
class App extends Component {
render(){
return (
<Router>
<Route path = "/" component = {App}>
<Route path="kategoriler" component={CategoriesPage} />
</Route>
</Router>
);
}
}
export default App;
它应该加载categoriesPage.js
,但它什么也不做。当我去 http://localhost:3000/kategoriler 它显示空白页。我错过了什么?
解决方案
- 我很确定
<Link>
组件应该react-router-dom
从而不是从react-router
<Route path="kategoriler" component={CategoriesPage} />
您确实忘记了像这样 -> 的路线名称中的斜杠<Route path="/kategoriler" component={CategoriesPage} />
,也许您也可以exact
在路线中添加参数?- 也许您可以尝试将 2 条路线彼此相邻放置,而不是像这样将其嵌套在 App 中
<Route exact path="/" component={App} />
<Route exact path="/kategoriler" component={CategoriesPage} />
推荐阅读
- python - 简化 numpy argmin 的愚蠢循环
- swift - 如果来自firebase的所有子值都为真(swift),我想写条件
- python - 尽管在标题中设置了 User-Agent,但在抓取时出现 403 错误
- swift - 当它是多行时,UILabel 填充搞砸了
- excel - 如何仅在特定单元格中计算平均值?
- scala - 如何在scala中动态处理自类型注释
- node.js - Sequelize 仅与 localhost 连接
- heroku - 如何从 node.js 脚本更新 heroku 环境变量?
- three.js - 如何在 Three.js 中使文本网格居中
- asp.net - Gridview 的标题 - asp.net