Skip to content
This repository was archived by the owner on Jul 19, 2019. It is now read-only.

Commit a4c828c

Browse files
author
TsaiKoga
committed
Finish lesson 12:将填入的内容构造成链接给router渲染
1 parent 66601d4 commit a4c828c

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

lessons/12-navigating/modules/Repos.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,37 @@
11
import React from 'react'
22
import NavLink from './NavLink'
3+
import { browserHistory } from 'react-router'
34

45
export default React.createClass({
6+
// ask for `router` from context
7+
contextTypes: {
8+
router: React.PropTypes.object
9+
},
10+
11+
handleSubmit(event) {
12+
event.preventDefault();
13+
const userName = event.target.elements[0].value;
14+
const repo = event.target.elements[1].value;
15+
const path = `/repos/${userName}/${repo}`;
16+
this.context.router.push(path); // 将form里的内容形成链接交给route去渲染。也就是只要有链接,就可以相应的渲染。
17+
console.log(path);
18+
},
19+
520
render() {
621
return (
722
<div>
823
<h2>Repos</h2>
924
<ul>
1025
<li><NavLink to="/repos/reactjs/react-router">React Router</NavLink></li>
1126
<li><NavLink to="/repos/facebook/react">React</NavLink></li>
27+
{/* Add this form */}
28+
<li>
29+
<form onSubmit={this.handleSubmit}>
30+
<input type="text" placeholder="userName"/> / {' '}
31+
<input type="text" placeholder="repo"/>{' '}
32+
<button type="submit">Go</button>
33+
</form>
34+
</li>
1235
</ul>
1336
{this.props.children}
1437
</div>

0 commit comments

Comments
 (0)