美文网首页
React-Router4

React-Router4

作者: hankchang | 来源:发表于2018-08-19 22:54 被阅读0次

React-Router4

  • 4是全新的版本, 和之前的版本不兼容, 浏览器和 RN 均兼容
  • React 开发单页应用必备, 践行路由即组件的概念
  • 核心概念: 动态路由, Route, Link, Switch

使用

  • npm install react-router-dom

入门组件

  • BrowserRouter, 包裹整个应用
  • Router 路由对应渲染的组件, 可嵌套
  • Link 跳转专用
  • exact 路由完全匹配
// index.js
import React from 'react'
import ReactDom from 'react-dom'
import {
  createStore,
  applyMiddleware,
  compose
} from 'redux'
import thunk from 'redux-thunk'
import {
  Provider
} from 'react-redux'
import { BrowserRouter, Link, Route } from 'react-router-dom'

import App from './App'
import {
  counter
} from './index.redux'

const store = createStore(counter, compose(
  applyMiddleware(thunk),
  window.devToolsExtension ? window.devToolsExtension() : () => {}
))

function Erying() {
  return <h2>二营</h2>
}
function Qibinglian() {
  return <h2>骑兵连</h2>
}
ReactDom.render(
  (<Provider store={store}>
    <BrowserRouter>
      <div>
        <ul>
          <li>
            <Link to="/">一营</Link>
          </li>
          <li>
            <Link to="/erying">二营</Link>
          </li>
          <li>
            <Link to="/qibinglian">骑兵连</Link>
          </li>
        </ul>
        <Route path='/' exact component={App}></Route>
        <Route path='/erying' component={Erying}></Route>
        <Route path='/qibinglian' component={Qibinglian}></Route>
      </div>
    </BrowserRouter>
  </Provider>),
  document.getElementById('root')
)

其他组件

  • url 参数, Router组件参数可用冒号标识参数
  • Redirect 组件 跳转
  • Switch 只渲染一个子 Route 组件

和 redux 配合

  • 复杂 redux 应用, 多个 reducer, 用 combineReducers 合并
import {combineReducers} from 'redux'
import {counter} from './index.redux'
import {auth} from './Auth.redux'

export default combineReducers({counter, auth})

相关文章

  • react-router4代码分割

    react-router4代码分割 react-router4官方文档: https://reacttrainin...

  • react-router4升级

    react-router4升级 react-router4 跟 redux 搭配,非路由组件,就是非直接匹配的 路...

  • 未看文章

    react-router4文档react-router4文档 # react-router 按需加载2.# 浅谈R...

  • react-code_split

    初始化工程目录 创建async-component.js 引用component 可以结合react-router4使用

  • 【React.js 13】react-router4基础知识-2

    除了上一篇所讲的3个入门组件BrowserRouter、Router、Link。react-router4其实还有...

  • react-router4按需加载踩坑,填坑

    react-router4如何去实现按需加载Component,在router4以前,我们是使用getCompon...

  • React-Router4

    React-Router4 4是全新的版本, 和之前的版本不兼容, 浏览器和 RN 均兼容 React 开发单页应...

  • react-router4

    一、关于react-router react-router是一些封装好的组件用于前端路由,当我们点击的时候会出现一...

  • react-router4

    react-router 有dom和native两种版本但是使用方法一致安装npm install react-r...

  • React-router4

    基础 React-router4是全新的版本,和之前版本不兼容,浏览器和React Native均兼容 React...

网友评论

      本文标题:React-Router4

      本文链接:https://www.haomeiwen.com/subject/nevhiftx.html