reactjs - 反应设置路线
问题描述
刚开始使用 React,想为我的应用定义路由。我了解 react 如何定义路由的一般概念,但我基本上编写并且不太了解的脚本与 youtube 上关于路由器的示例略有不同。谁能帮我?
应用程序.js
import React, { Component, Fragment } from "react";
import ReactDOM from "react-dom";
import Header from "./layout/Header";
import Dashboard from "./users/Dashboard";
import Users from "./users/Users";
import { Provider } from 'react-redux';
import store from '../store';
import {BrowserRouter as Router, Switch, Route} from 'react-router-dom';
class App extends Component {
render() {
return (
<Provider store={store}>
<Fragment>
<Header />
<div className="container">
<Dashboard />
</div>
</Fragment>
</Provider>
);
}
}
ReactDOM.render(<App />, document.getElementById('app'));
解决方案
您需要阅读文档:文档
但首先让我向您展示一个简单的用法:
首先用组件包装你的代码Router
:
class App extends Component {
render() {
return (
<Provider store={store}>
<Router>
<Fragment>
<Header />
<div className="container">
<Dashboard />
</div>
</Fragment>
</Router>
</Provider>
);
}
}
然后,您可以指定在到达某个特定 url 时必须显示哪个组件。如下所示:
class App extends Component {
render() {
return (
<Provider store={store}>
<Router>
<Fragment>
<div className="container">
<Route path="/dashboard" component={Dashboard} />
</div>
</Fragment>
</Router>
</Provider>
);
}
}
使用上面的代码将呈现Header
始终。Dashboard
只有当您在带有/dashboard
url的页面上时,它才会呈现组件。
推荐阅读
- javascript - TypeError:无法读取未定义 discord.js 的属性“执行”
- typescript - 如何根据字符串值检查泛型类型映射器是否具有键
- android - 如何将 ArrayList 转移到另一个活动
- angular - 如何编写角度单元测试以在按钮单击时呈现子组件
- go - 从opentelemetry的请求标头中提取跟踪器的正确方法
- flutter - “没有引用声明‘setState’。” StatefulWidget 中 DropdownButton 的警告
- python - 噪声图像上的Opencv矩形检测
- azure - 是否可以使用应用程序网关在 AKS 中同时公开 HTTP 端口和 TCP 端口?
- java - 是否可以获取布局的 id 并在 ViewHolder 类中进行比较?
- python - 我正在尝试在 python 中安装散景库,但发生了错误。现在点子不起作用