我正在使用反应router-router-dom
,我无法重定向到任何路径like <Route path="/store" component={App}/>
!但它只重定向到'/'
这条路径。我找不到这里有什么问题! 这是我的依赖项的屏幕截图
我正在使用webpac^2
. 反应路由器dom^4.1.1
这是我的代码
import React from "react";
import { render } from "react-dom";
import {BrowserRouter as Router, Route, Link} from "react-router-dom";
import createHistory from "history/createHashHistory"
import helpers from './helpers';
require('./main.css');
let history = createHistory();
/*App*/
class App extends React.Component{
constructor(){
super();
}
render () {
return(
<div className="catch-of-the-day">
<div className="menu">
<Header tagline="Fresh sea food market."/>
</div>
<Order/>
<Inventory/>
</div>
);
}
}
/*HEADER*/
class Header extends React.Component{
constructor(){
super();
}
render(){
return(
<header className="top">
<h1>
catch
<span className="ofThe">
<span className="of">of</span>
<span className="the">the</span>
</span>
day
</h1>
<h3 className="tagline"><span>{this.props.tagline}</span></h3>
</header>
);
}
}
/*order*/
class Order extends React.Component{
constructor(){
super();
}
render(){
return(
<p>This is Order</p>
);
}
}
/*Inventory*/
class Inventory extends React.Component{
constructor(){
super();
}
render(){
return(
<p>This is Inventory</p>
);
}
}
/* this let us make Storepicker */
class Storepicker extends React.Component{
constructor() {
super();
this.state = { storeName : ''}
}
goToStore (event){
event.preventDefault();
/* get the data from the input */
let storeID = event.target.store_name.value;
history.push('/store/' + storeID);
}
render(){
return(
<form className="store-selector" onSubmit={this.goToStore}>
<h2>Please enter a store!</h2>
<input type="text" name="store_name" defaultValue={helpers.getFunName()}/>
<input type="submit"/>
</form>
);
}
}
let Routers = () =>{
return (
<Router>
<div>
<Route path="/store" component={App}/>
<Route path="/" component={Storepicker}/>
</div>
</Router>
);
};
render(
<Routers/>,
document.getElementById("app")
);