예제를 위하여 06-params 디렉토리로 이동하고 npm install을 실행한다.
이번 예제에서는 두 개의 URL을 추가할 것이다.
>
/repos/reactjs/react-router 
/repos/facebook/react 
 | 
첫번째로 아래 파일을 추가한다.
[binrang@binrang modules]$ pwd 
/home/binrang/react/react-router-tutorial/lessons/06-params/modules 
[binrang@binrang modules]$ vi Repo.js  
import React from 'react' 
export default React.createClass({ 
  render() { 
    return ( 
      <div> 
        <h2>{this.props.params.repoName}</h2> 
      </div> 
    ) 
  } 
}) 
 | 
그 다음 파일은 index.js 파일을 수정하는데 이 예제의 루트에 위치한다.
[binrang@binrang 06-params]$ pwd 
/home/binrang/react/react-router-tutorial/lessons/06-params 
[binrang@binrang 06-params]$ vi index.js  
import React from 'react' 
import { render } from 'react-dom' 
import { Router, Route, hashHistory } from 'react-router' 
import App from './modules/App' 
import About from './modules/About' 
import Repos from './modules/Repos' 
render(( 
  <Router history={hashHistory}> 
    <Route path="/" component={App}> 
      <Route path="/repos" component={Repos}/> 
      <Route path="/about" component={About}/> 
    </Route> 
  </Router> 
), document.getElementById('app')) 
 | 
이 파일을 아래와 같이 수정한다. 새로운 route를 추가하는 것이다.
import React from 'react' 
import { render } from 'react-dom' 
import { Router, Route, hashHistory } from 'react-router' 
import App from './modules/App' 
import About from './modules/About' 
import Repos from './modules/Repos' 
// import Repo 
import Repo from './modules/Repo' 
render(( 
  <Router history={hashHistory}> 
    <Route path="/" component={App}> 
      <Route path="/repos" component={Repos}/> 
      {/* add the new route */} 
      <Route path="/repos/:userName/:repoName" component={Repo}/> 
      <Route path="/about" component={About}/> 
    </Route> 
  </Router> 
), document.getElementById('app')) 
 | 
이번에는 Repos.js 파일을 손 보자.
import React from 'react' 
// Add import  
import { Link } from 'react-router' 
export default React.createClass({ 
  render() { 
    return ( 
      <div> 
        <h2>Repos</h2> 
        {/* add some links */} 
        <ul> 
          <li><Link to="/repos/reactjs/react-router">React Router</Link></li> 
          <li><Link to="/repos/facebook/react">React</Link></li> 
        </ul> 
      </div> 
    ) 
  } 
}) 
 | 
npm start를 하고 브라우저를 학인하면 아래와 같이 확인할 수 있다.
![]()  | 
| 홈화면은 이제 익숙하네.. | 
![]()  | 
| About는 변화 없다. | 
![]()  | 
| Repos를 클릭하니 페이지가 달라진다. | 
![]()  | 
| repoName 파라미터가 react-router로 표시가 된다. | 
![]()  | 
| repoName 파라미터가 react로 표시된다. | 
참고 URL : 06-params





댓글 없음:
댓글 쓰기