UNPKG

react-router

Version:

A complete routing library for React.js

55 lines (43 loc) 1.4 kB
import React from 'react'; import invariant from 'invariant'; import { createRouteFromReactElement } from './RouteUtils'; import { component, components } from './PropTypes'; var { string, bool, func } = React.PropTypes; /** * A <Route> is used to declare which components are rendered to the page when * the URL matches a given pattern. * * Routes are arranged in a nested tree structure. When a new URL is requested, * the tree is searched depth-first to find a route whose path matches the URL. * When one is found, all routes in the tree that lead to it are considered * "active" and their components are rendered into the DOM, nested in the same * order as they are in the tree. */ export var Route = React.createClass({ statics: { createRouteFromReactElement(element) { var route = createRouteFromReactElement(element); if (route.handler) { warning(false, '<Route handler> is deprecated, use <Route component> instead'); route.component = route.handler; delete route.handler; } return route; } }, propTypes: { path: string, ignoreScrollBehavior: bool, handler: component, component, components, getComponents: func }, render() { invariant( false, '<Route> elements are for router configuration only and should not be rendered' ); } }); export default Route;