ReactJS 路由解决方案,React Router 1.0.0 发布

jopen 8年前

React Router 一个用于 React.js 的路由解决方案(routing solution)。它轻松可以同步你的 app 和 URL,同时给嵌套,转换,和服务端渲染一流的支持。

特性:

  • 嵌套视图映射到嵌套路由

  • 模块化构建路由层级

  • 同步和异步转移挂钩

  • 转换中止/重定向/重试

  • 动态 segments

  • 查询参数

  • .active 类的路由活动时可以自动链接

  • Multiple root routes

  • Hash 或 HTML5 历史 (含备份) URLs

  • 声明重定向路由

  • 声明未找到路由

  • 浏览器滚动行为带有转变效果

React Router 1.0.0 发布,此版本主要是围绕 API 进行改进,重写了整个代码基础库,处理一些用例,比如路由加载,基于 session 的路由匹配,服务器渲染,集成 redux 和 relay 等等。

主要 API 改进

导入

// v0.13.x  var Router = require('react-router');  var Route = Router.Route;  // v1.0  var ReactRouter = require('react-router');  var Router = ReactRouter.Router;  var Route = ReactRouter.Route;  // or using ES Modules  import { Router, Route } from 'react-router';

渲染

// v0.13.x  Router.run(routes, (Handler) => {    render(<Handler/>, el);  })  // v1.0  render(<Router>{routes}</Router>, el)  // looks more like this:  render((    <Router>      <Route path="/" component={App}/>    </Router>  ), el);  // or if you'd rather  render(<Router routes={routes}/>, el)

位置

// v0.13.x  Router.run(routes, Router.BrowserHistory, (Handler) => {    render(<Handler/>, el);  })  // v1.0  import createBrowserHistory from 'history/lib/createBrowserHistory'  let history = createBrowserHistory()  render(<Router history={history}>{routes}</Router>, el)

更多改进内容请看发行说明

下载:https://github.com/rackt/react-router/archive/v1.0.0.zip