学习反应在这里,并试图让路线工作。这是一个非常简单的事情,只是为了感受语法等。下面的代码工作,因为我在地址栏中输入路线一和二。但我想建立一个导航栏。假设我可以简单地在App.js中添加HTML来实现这一点,我意识到使用<a href=
不是要去使用Link的方式。这与我的路线内的<Link>
标签正常工作,但说我想添加一个导航到App.js,使用相同的链接方法不起作用。反应路由器导航
我尝试添加:
<h1>
<Link to="/route-one">One</Link>
|
<Link to="/route-two">Two</Link>
</h1>
<hr />
<Router>
...
但 '一' 和 '二' 是不是链接。尽管在浏览器控制台我看到:
TypeError: this.context.history is undefined
我问教练,但他并不想帮助。
查看我目前在下面的代码;
这是App.js文件:
import React from 'react';
import ReactDOM from 'react-dom';
import { Router, Route, IndexRoute } from 'react-router';
import RouteOne from './RouteOne.js';
import RouteTwo from './RouteTwo.js';
import { Link } from 'react-router';
const App = React.createClass({
render() {
return (
<div>
<Router>
<Route path="route-one" component={RouteOne} />
<Route path="route-two" component={RouteTwo} />
</Router>
</div>
)
}
});
ReactDOM.render(<App />, document.getElementById("app"));
这是RouteOne.js:
import React from 'react';
import { Link } from 'react-router';
var RouteOne = React.createClass({
render() {
return (
<div>
<h2>Route One</h2>
<Link to="/route-two">
<h3>Switch Route</h3>
</Link>
</div>
)
}
});
export default RouteOne;
这是RouteTwo.js:
import React from 'react';
import { Link } from 'react-router';
var RouteTwo = React.createClass({
render() {
return (
<div>
<h2>Route Two</h2>
<Link to="/route-one">
<h3>Switch Route</h3>
</Link>
</div>
)
}
});
export default RouteTwo;