【发布时间】:2019-12-19 11:08:27
【问题描述】:
我是 React 新手,在实现路由时遇到问题。我想我已经设置好了所有东西,但是当我尝试路由时,我导入的组件会显示在索引页面上,但我应该会看到一个新页面。
我尝试定义所有路径并导入所需的组件
我的注册组件
export const SignUp = () => (
<Container>
<h2>Sign Up</h2>
<Form className="form">
<Col>
<FormGroup>
<Label>First Name</Label>
<Input
type="text"
name="firstName"
id="firstName"
placeholder="First name..."
/>
<Label>Second Name</Label>
<Input
type="text"
name="secondName"
id="secondName"
placeholder="Second name..."
/>
<Label>Email</Label>
<Input
type="email"
name="email"
id="email"
placeholder="Email..."
/>
</FormGroup>
</Col>
<Button>Submit</Button>
</Form>
</Container>
)
我的 App.js 文件
import React from 'react';
import { BrowserRouter as Router, Route, Switch} from 'react-router-dom';
import { Layout} from './components/Layout';
import { NavigationBar} from './components/NavBar'
import {Footer} from './components/Footer';
import {SignUp} from './components/Signup';
import { SignIn} from './components/Signin';
import { Home } from './components/Home';
class App extends React.Component {
render(){
return (
<React.Fragment>
<NavigationBar/>
<Layout>
<Router>
<Switch>
<Route exact path="/"/>
<Route path="/signup" component={SignUp}/>
<Route path="/signin" component={SignIn}/>
</Switch>
</Router>
<Footer/>
</Layout>
</React.Fragment>
);
}
}
我真的希望在使用链接之前先在地址栏中输入路径并进入导入的组件(页面)
【问题讨论】:
-
您是否尝试使用来自
react-router-dom的 BrowserRouter?或来自react-router-dom的路由器。您能否添加所有导入,这将有助于找出您的问题所在。 -
嗨@AlejandroGarciaAnglada,看看我编辑的帖子。它现在显示所有导入。谢谢
-
路由器部分在我看来不错。您能否详细说明您的问题的这一部分:“我导入的组件显示在索引页面上但我应该看到一个新页面”?你的意思是你没想到会看到页面刷新?还是组件显示不正确?
标签: javascript reactjs react-router-dom